提出 #26957919
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
#define nl "\n"
#define nf endl
#define ll long long
#define pb push_back
#define _ << ' ' <<
#define INF (ll)1e18
#define mod 998244353
#define maxn 600010
ll i, i1, j, k, k1, t, n, m, res, flag[10], a, b;
ll f[3][3], rs[maxn];
char s[maxn];
void find(ll ty, ll cn, ll a, ll b, ll c) {
ll i, k;
array<ll, 3> o = {a, b, c};
for (i = 0; i < 3 * n; i++) {
if (i % n == 0) k = cn;
if (k == 0) continue;
if (rs[i] != 0) continue;
if ((ll)s[i] - 'A' != o[i / n]) continue;
rs[i] = ty; k--; f[i / n][(ll)s[i] - 'A']--;
}
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
#if !ONLINE_JUDGE && !EVAL
ifstream cin("input.txt");
ofstream cout("output.txt");
#endif
cin >> n;
for (i = 0; i < 3 * n; i++) {
cin >> s[i];
f[i / n][(ll)s[i] - 'A']++;
}
/* for (i = 0; i <= 2; i++) {
for (j = 0; j <= 2; j++) {
cout << f[i][j] << ' ';
}
cout << nl;
} */
find(1, min({f[0][0], f[1][1], f[2][2]}), 0, 1, 2);
find(2, min({f[0][1], f[1][2], f[2][0]}), 1, 2, 0);
find(3, min({f[0][2], f[1][0], f[2][1]}), 2, 0, 1);
find(4, min({f[0][0], f[1][2], f[2][1]}), 0, 2, 1);
find(5, min({f[0][1], f[1][0], f[2][2]}), 1, 0, 2);
find(6, min({f[0][2], f[1][1], f[2][0]}), 2, 1, 0);
for (i = 0; i < 3 * n; i++) cout << rs[i];
cout << nl;
return 0;
}
提出情報
提出日時
2021-10-31 21:45:47+0900
問題
A - ABC Identity
ユーザ
TheScrasse
言語
C++ (GCC 9.2.1)
得点
400
コード長
1535 Byte
結果
AC
実行時間
99 ms
メモリ
8896 KiB
コンパイルエラー
./Main.cpp: In function ‘void find(long long int, long long int, long long int, long long int, long long int)’:
./Main.cpp:26:22: warning: ‘k’ may be used uninitialized in this function [-Wmaybe-uninitialized]
26 | rs[i] = ty; k--; f[i / n][(ll)s[i] - 'A']--;
| ~^~
ジャッジ結果
セット名
Sample
All
得点 / 配点
0 / 0
400 / 400
結果
セット名
テストケース
Sample
01.txt, 02.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
ケース名
結果
実行時間
メモリ
01.txt
AC
11 ms
3532 KiB
02.txt
AC
2 ms
3544 KiB
03.txt
AC
2 ms
3600 KiB
04.txt
AC
2 ms
3628 KiB
05.txt
AC
2 ms
3564 KiB
06.txt
AC
2 ms
3548 KiB
07.txt
AC
6 ms
3548 KiB
08.txt
AC
2 ms
3604 KiB
09.txt
AC
2 ms
3588 KiB
10.txt
AC
2 ms
3532 KiB
11.txt
AC
2 ms
3576 KiB
12.txt
AC
2 ms
3600 KiB
13.txt
AC
1 ms
3572 KiB
14.txt
AC
2 ms
3628 KiB
15.txt
AC
2 ms
3532 KiB
16.txt
AC
2 ms
3520 KiB
17.txt
AC
2 ms
3604 KiB
18.txt
AC
3 ms
3680 KiB
19.txt
AC
8 ms
3596 KiB
20.txt
AC
4 ms
3636 KiB
21.txt
AC
8 ms
3596 KiB
22.txt
AC
3 ms
3608 KiB
23.txt
AC
3 ms
3716 KiB
24.txt
AC
4 ms
3612 KiB
25.txt
AC
3 ms
3524 KiB
26.txt
AC
99 ms
8868 KiB
27.txt
AC
96 ms
8876 KiB
28.txt
AC
94 ms
8836 KiB
29.txt
AC
95 ms
8796 KiB
30.txt
AC
94 ms
8804 KiB
31.txt
AC
93 ms
8844 KiB
32.txt
AC
94 ms
8768 KiB
33.txt
AC
94 ms
8896 KiB
34.txt
AC
93 ms
8820 KiB
35.txt
AC
95 ms
8820 KiB
36.txt
AC
94 ms
8748 KiB
37.txt
AC
91 ms
8820 KiB
38.txt
AC
93 ms
8872 KiB
39.txt
AC
94 ms
8836 KiB
40.txt
AC
93 ms
8876 KiB
41.txt
AC
95 ms
8860 KiB
42.txt
AC
92 ms
8792 KiB
43.txt
AC
96 ms
8816 KiB
44.txt
AC
96 ms
8816 KiB
45.txt
AC
93 ms
8872 KiB
46.txt
AC
96 ms
8844 KiB