結果
| 問題 |
No.3110 Like CPCTF?
|
| コンテスト | |
| ユーザー |
aaaaaaaaaaa
|
| 提出日時 | 2025-04-18 22:03:39 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 2,000 ms |
| コード長 | 1,470 bytes |
| コンパイル時間 | 925 ms |
| コンパイル使用メモリ | 71,020 KB |
| 実行使用メモリ | 7,844 KB |
| 最終ジャッジ日時 | 2025-04-18 22:03:49 |
| 合計ジャッジ時間 | 1,611 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 16 |
ソースコード
#include <iostream>
#include <string>
#include <vector>
int main() {
// 提高I/O速度 (可选,但推荐在竞技编程中使用)
std::ios_base::sync_with_stdio(false);
std::cin.tie(NULL);
int N;
std::cin >> N; // 读取字符串长度
std::string S;
std::cin >> S; // 读取字符串
long long count = 0; // 初始化计数器,使用 long long
// 五重循环枚举所有 i1 < i2 < i3 < i4 < i5 的组合
for (int i1 = 0; i1 < N; ++i1) {
for (int i2 = i1 + 1; i2 < N; ++i2) {
for (int i3 = i2 + 1; i3 < N; ++i3) {
for (int i4 = i3 + 1; i4 < N; ++i4) {
for (int i5 = i4 + 1; i5 < N; ++i5) {
// 获取对应字符
char c1 = S[i1];
char c2 = S[i2];
char c3 = S[i3];
char c4 = S[i4];
char c5 = S[i5];
// 检查CPCTF式条件: c1=c3 且 {c1, c2, c4, c5} 互不相同
if (c1 == c3 &&
c1 != c2 && c1 != c4 && c1 != c5 &&
c2 != c4 && c2 != c5 &&
c4 != c5) {
count++; // 条件满足,计数器加一
}
}
}
}
}
}
std::cout << count << std::endl; // 输出结果
return 0;
}
aaaaaaaaaaa