結果
問題 | No.3110 Like CPCTF? |
ユーザー |
![]() |
提出日時 | 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; }