結果
問題 |
No.1005 BOT対策
|
ユーザー |
![]() |
提出日時 | 2020-03-06 21:48:25 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 694 bytes |
コンパイル時間 | 1,499 ms |
コンパイル使用メモリ | 168,856 KB |
実行使用メモリ | 10,496 KB |
最終ジャッジ日時 | 2024-10-14 10:32:14 |
合計ジャッジ時間 | 4,896 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 1 TLE * 1 -- * 25 |
ソースコード
#include<bits/stdc++.h> using namespace std; #define int long long signed main(void){ string S; cin >> S; string T; cin >> T; int n = (int)S.size(); int m = (int)T.size(); if( n < m ){ cout << 0 << endl; return 0;} int pos = 0; int cnt = 0; while( pos + m <= n ){ //posを先頭としてm文字がTに等しいかどうかを調べる string test = S.substr(pos,m); if( test != T ){ pos++;} else{ //なるべく後ろにドットを繋げた方が徳 string s1 = S.substr(0,pos+m-1); string s2 = S.substr(pos+m-1,n-(pos+m-1)); S = s1+"."+s2; cnt++; n = (int)S.size(); } } cout << cnt << endl; return 0; }