結果
| 問題 |
No.2226 Hello, Forgotten World!
|
| コンテスト | |
| ユーザー |
Sarievo
|
| 提出日時 | 2023-02-24 22:14:11 |
| 言語 | cLay (20241019-1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 986 bytes |
| コンパイル時間 | 2,866 ms |
| コンパイル使用メモリ | 177,804 KB |
| 実行使用メモリ | 7,620 KB |
| 最終ジャッジ日時 | 2024-09-13 05:36:46 |
| 合計ジャッジ時間 | 3,382 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | WA * 9 |
ソースコード
const string cmp = "helloworld";
const ll sz_t = cmp.size();
bool contains(string&s, ll x){
ll n = s.size();
assert(x + sz_t - 1 <= n);
rep(i, x, x + sz_t) {
if (s[i] != cmp[i - x]) {
return false;
}
}
return true;
}
void fill(string&s) {
for(auto&&x:s) if (x == '?') x = 'a';
}
bool implies(string&s, ll x){
ll n = s.size();
assert((x + sz_t - 1) <= n);
rep(i, x, x + sz_t) {
if (s[i] != cmp[i - x]) {
if (s[i] != '?') return false;
}
}
rep(i, x, x + sz_t) {
if (s[i] == '?') s[i] = cmp[i - x];
}
return true;
}
{
REP(rd_int()){
ll @n;
string @s;
bool done = false;
rep(i, n - sz_t + 1) {
if (contains(s, i)) {
fill(s);
wt(s);
done = true;
break;
}
}
if (done) continue;
rrep(i, n - sz_t + 1) {
if (implies(s, i)) {
fill(s);
wt(s);
done = true;
break;
}
}
if (done) continue;
wt(-1);
}
}
Sarievo