提出 #36239513
ソースコード 拡げる
#include <bits/stdc++.h>
#define rep(i, n) for (int i = 0; i < (n); i++)
using namespace std;
using ll = long long;
using pii = pair<int, int>;
int main() {
int n;
cin >> n;
vector<int> a(n);
rep(i, n) cin >> a[i];
vector<int> c2(n), c3(n);
map<int, int> mp1;
rep(i, n) {
map<int, int> mp2;
for (int j = 2; j * j <= a[i]; j++) {
while (a[i] % j == 0) {
if (j == 2) c2[i]++;
else if (j == 3) c3[i]++;
else mp2[j]++;
a[i] /= j;
}
}
if (a[i] > 1) {
if (a[i] == 2) c2[i]++;
else if (a[i] == 3) c3[i]++;
else mp2[a[i]]++;
}
if (i == 0) mp1 = mp2;
bool ok = true;
for (auto m : mp1) if (mp2[m.first] != m.second) ok = false;
for (auto m : mp2) if (mp1[m.first] != m.second) ok = false;
if (!ok) {
cout << -1 << endl;
return 0;
}
}
int mn2 = 100, mn3 = 100;
rep(i, n) {
mn2 = min(mn2, c2[i]);
mn3 = min(mn3, c3[i]);
//cout << c2[i] << " " << c3[i] << endl;
}
int ans = 0;
rep(i, n) {
ans += c2[i] - mn2;
ans += c3[i] - mn3;
}
cout << ans << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | D - Divide by 2 or 3 |
| ユーザ | icchipost |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 400 |
| コード長 | 1352 Byte |
| 結果 | AC |
| 実行時間 | 100 ms |
| メモリ | 3592 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 400 / 400 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_srnd0_00.txt, 01_srnd0_01.txt, 01_srnd0_02.txt, 02_srnd1_00.txt, 02_srnd1_01.txt, 02_srnd1_02.txt, 02_srnd1_03.txt, 02_srnd1_04.txt, 02_srnd1_05.txt, 02_srnd1_06.txt, 02_srnd1_07.txt, 02_srnd1_08.txt, 02_srnd1_09.txt, 03_rnd0_00.txt, 03_rnd0_01.txt, 03_rnd0_02.txt, 04_rnd1_00.txt, 04_rnd1_01.txt, 04_rnd1_02.txt, 04_rnd1_03.txt, 04_rnd1_04.txt, 04_rnd1_05.txt, 04_rnd1_06.txt, 04_rnd1_07.txt, 04_rnd1_08.txt, 04_rnd1_09.txt, 05_same_00.txt, 05_same_01.txt, 05_same_02.txt, 05_same_03.txt, 05_same_04.txt, 05_same_05.txt, 06_max_00.txt, 06_max_01.txt, 07_ng_00.txt, 07_ng_01.txt, 07_ng_02.txt, 07_ng_03.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 8 ms | 3592 KiB |
| 00_sample_01.txt | AC | 2 ms | 3368 KiB |
| 00_sample_02.txt | AC | 3 ms | 3552 KiB |
| 01_srnd0_00.txt | AC | 2 ms | 3556 KiB |
| 01_srnd0_01.txt | AC | 2 ms | 3472 KiB |
| 01_srnd0_02.txt | AC | 1 ms | 3552 KiB |
| 02_srnd1_00.txt | AC | 2 ms | 3396 KiB |
| 02_srnd1_01.txt | AC | 2 ms | 3400 KiB |
| 02_srnd1_02.txt | AC | 2 ms | 3396 KiB |
| 02_srnd1_03.txt | AC | 2 ms | 3372 KiB |
| 02_srnd1_04.txt | AC | 2 ms | 3552 KiB |
| 02_srnd1_05.txt | AC | 2 ms | 3400 KiB |
| 02_srnd1_06.txt | AC | 2 ms | 3552 KiB |
| 02_srnd1_07.txt | AC | 1 ms | 3472 KiB |
| 02_srnd1_08.txt | AC | 2 ms | 3400 KiB |
| 02_srnd1_09.txt | AC | 2 ms | 3444 KiB |
| 03_rnd0_00.txt | AC | 3 ms | 3496 KiB |
| 03_rnd0_01.txt | AC | 2 ms | 3392 KiB |
| 03_rnd0_02.txt | AC | 2 ms | 3388 KiB |
| 04_rnd1_00.txt | AC | 4 ms | 3488 KiB |
| 04_rnd1_01.txt | AC | 5 ms | 3404 KiB |
| 04_rnd1_02.txt | AC | 3 ms | 3452 KiB |
| 04_rnd1_03.txt | AC | 4 ms | 3404 KiB |
| 04_rnd1_04.txt | AC | 2 ms | 3392 KiB |
| 04_rnd1_05.txt | AC | 3 ms | 3388 KiB |
| 04_rnd1_06.txt | AC | 5 ms | 3468 KiB |
| 04_rnd1_07.txt | AC | 3 ms | 3548 KiB |
| 04_rnd1_08.txt | AC | 4 ms | 3384 KiB |
| 04_rnd1_09.txt | AC | 6 ms | 3500 KiB |
| 05_same_00.txt | AC | 2 ms | 3484 KiB |
| 05_same_01.txt | AC | 2 ms | 3384 KiB |
| 05_same_02.txt | AC | 2 ms | 3500 KiB |
| 05_same_03.txt | AC | 100 ms | 3476 KiB |
| 05_same_04.txt | AC | 2 ms | 3548 KiB |
| 05_same_05.txt | AC | 2 ms | 3568 KiB |
| 06_max_00.txt | AC | 2 ms | 3392 KiB |
| 06_max_01.txt | AC | 3 ms | 3500 KiB |
| 07_ng_00.txt | AC | 4 ms | 3496 KiB |
| 07_ng_01.txt | AC | 2 ms | 3572 KiB |
| 07_ng_02.txt | AC | 2 ms | 3556 KiB |
| 07_ng_03.txt | AC | 4 ms | 3384 KiB |