답안 #1054018

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1054018 2024-08-12T04:43:28 Z sleepntsheep Diversity (CEOI21_diversity) C++17
0 / 100
1 ms 2396 KB
#include <cstdio>
#include <algorithm>
#define N 300001
#define A 300001

int n, q, a[N], fr[N], fr2[N];
long long z, y;

int main() {
  scanf("%d%d", &n, &q);
  for (int i = 1; i <= n; ++i) scanf("%d", a + i), ++fr[a[i]];

  for (int i = 1; i <= 300000; ++i)
    ++fr2[fr[i]];

  for (int o = 1, j = 0, i = 1; i <= n; ++i) {
    while (fr2[i]--)
      a[o++] = j;
    ++j;
  }

  for (int c = 1, f = 0, i = n; i >= 1; --i) {
    z += (n - i + 1) * c - y;

    if (a[i] != a[i - 1]) {
        y += c;
      ++c;
    } else {
      y += c - 1;
    }
  }

  printf("%lld", z);

}

Compilation message

diversity.cpp: In function 'int main()':
diversity.cpp:22:19: warning: unused variable 'f' [-Wunused-variable]
   22 |   for (int c = 1, f = 0, i = n; i >= 1; --i) {
      |                   ^
diversity.cpp:10:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   10 |   scanf("%d%d", &n, &q);
      |   ~~~~~^~~~~~~~~~~~~~~~
diversity.cpp:11:37: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 |   for (int i = 1; i <= n; ++i) scanf("%d", a + i), ++fr[a[i]];
      |                                ~~~~~^~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2396 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2396 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2396 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -