Submission #1686321
Source Code Expand
#include <bits/stdc++.h> typedef long long LL; const int maxn = 1e5 + 100; int n, ans; LL a[maxn]; std::map<LL, int> M; int main() { scanf("%d", &n); for (int i = 1; i <= n; ++i) { scanf("%lld", a + i); for(LL y = 2; y * y * y <= a[i]; ++y) { while(a[i] % (y * y * y) == 0) { a[i] /= (y * y * y); } } if(M.find(a[i]) == M.end()) { M[a[i]] = 0; } ++M[a[i]]; } for (int i = 1; i <= n; ++i) { if(M.find(a[i]) == M.end()) { continue; } if(a[i] == 1) { ++ans; M.erase(a[i]); continue; } int m = a[i]; LL y = 1; for (LL x = 2; x <= 2500; ++x) { if(a[i] % x == 0) { a[i] /= x; if(y > 10000000000ll / x) { y = 10000000001ll; break; } y *= x; if(a[i] % x == 0) { a[i] /= x; } else { y *= x; } } } if(y > 10000000000ll) { ans += M[m]; M.erase(m); continue; } if(a[i] > 1) { LL x = (LL)(sqrt(1. * a[i])); while(x * x <= a[i]) { ++x; } while(x * x > a[i]) { --x; } if(x * x != a[i]) { x = a[i]; } if(y > 10000000000ll / x) { ans += M[m]; M.erase(m); continue; } y *= x; } if(M.find(y) != M.end()) { ans += std::max(M[m], M[y]); M.erase(y); M.erase(m); } else { ans += M[m]; M.erase(m); } } printf("%d\n", ans); return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Anticube |
User | OMTWOCZWEIXVI |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1412 Byte |
Status | WA |
Exec Time | 4176 ms |
Memory | 9344 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:12:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &n); ^ ./Main.cpp:14:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%lld", a + i); ^
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 1100 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | s1.txt, s2.txt, s3.txt |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, 41.txt, 42.txt, 43.txt, 44.txt, 45.txt, 46.txt, 47.txt, 48.txt, s1.txt, s2.txt, s3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | WA | 4115 ms | 7296 KB |
02.txt | WA | 4176 ms | 7296 KB |
03.txt | WA | 4170 ms | 7296 KB |
04.txt | WA | 4173 ms | 7296 KB |
05.txt | WA | 4153 ms | 9344 KB |
06.txt | WA | 4127 ms | 7296 KB |
07.txt | WA | 4155 ms | 7296 KB |
08.txt | WA | 4115 ms | 7296 KB |
09.txt | WA | 4104 ms | 7424 KB |
10.txt | WA | 4119 ms | 7296 KB |
11.txt | AC | 2528 ms | 2944 KB |
12.txt | AC | 2526 ms | 2944 KB |
13.txt | WA | 1276 ms | 5376 KB |
14.txt | WA | 1273 ms | 3328 KB |
15.txt | WA | 1274 ms | 3328 KB |
16.txt | WA | 1266 ms | 3328 KB |
17.txt | AC | 38 ms | 1024 KB |
18.txt | AC | 38 ms | 1024 KB |
19.txt | AC | 38 ms | 1024 KB |
20.txt | AC | 38 ms | 1024 KB |
21.txt | WA | 2492 ms | 4864 KB |
22.txt | WA | 2478 ms | 4864 KB |
23.txt | WA | 2491 ms | 4864 KB |
24.txt | WA | 2487 ms | 4864 KB |
25.txt | WA | 2504 ms | 4864 KB |
26.txt | WA | 2528 ms | 4864 KB |
27.txt | WA | 2095 ms | 6272 KB |
28.txt | AC | 10 ms | 1024 KB |
29.txt | AC | 12 ms | 1024 KB |
30.txt | AC | 11 ms | 1024 KB |
31.txt | AC | 11 ms | 1024 KB |
32.txt | AC | 11 ms | 1024 KB |
33.txt | AC | 1 ms | 256 KB |
34.txt | AC | 30 ms | 1024 KB |
35.txt | AC | 30 ms | 1024 KB |
36.txt | AC | 1 ms | 256 KB |
37.txt | WA | 2599 ms | 3456 KB |
38.txt | WA | 2614 ms | 3456 KB |
39.txt | WA | 2632 ms | 3456 KB |
40.txt | WA | 2602 ms | 3456 KB |
41.txt | AC | 1 ms | 256 KB |
42.txt | AC | 1 ms | 256 KB |
43.txt | AC | 1 ms | 256 KB |
44.txt | AC | 1 ms | 256 KB |
45.txt | AC | 1 ms | 256 KB |
46.txt | AC | 1 ms | 256 KB |
47.txt | AC | 1 ms | 256 KB |
48.txt | AC | 1 ms | 256 KB |
s1.txt | AC | 2 ms | 256 KB |
s2.txt | AC | 1 ms | 256 KB |
s3.txt | AC | 2 ms | 256 KB |