結果
問題 | No.1005 BOT対策 |
ユーザー | snrnsidy |
提出日時 | 2021-06-01 07:21:29 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 5 ms / 2,000 ms |
コード長 | 1,255 bytes |
コンパイル時間 | 3,187 ms |
コンパイル使用メモリ | 197,964 KB |
最終ジャッジ日時 | 2025-01-21 20:57:53 |
ジャッジサーバーID (参考情報) |
judge5 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 28 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main(void) { cin.tie(0); ios::sync_with_stdio(false); string s, t; cin >> s; cin >> t; int res = 0; int n = s.length(); int m = t.length(); set <char> S, T; for (int i = 0; i < n; i++) { S.insert(s[i]); } for (int i = 0; i < m; i++) { T.insert(t[i]); } if (S.size() == 1 && T.size() == 1) { if (s[0] == t[0]) { if (m == 1) { cout << -1 << '\n'; } else { cout << (n/(m-1)) - 1 << '\n'; } } else { cout << 0 << '\n'; } return 0; } int idx = 0; while (1) { if (idx > n - m) { break; } if (s.substr(idx, m) == t) { res++; idx += m; } else { idx++; } } if (t.length() == 1) { if (res > 0) { cout << -1 << '\n'; } else { cout << res << '\n'; } } else { cout << res << '\n'; } return 0; }