提出 #61167350


ソースコード 拡げる

#include "bits/stdc++.h"
#include <chrono>
using namespace std;

#define LL long long
#define mod 998244353ll
//#define mod 1000000007ll
#define PI acos(-1.0)
#define set0(ar) memset(ar, 0, sizeof ar)
#define setinf(ar) memset(ar, 126, sizeof ar)

inline LL bigmod(LL p, LL e, LL M) {
  LL r = 1;
  for (; e > 0; e >>= 1, p = (p * p) % M)
    if (e & 1) r = (r * p) % M;
  return r;
}
inline LL modinverse(LL a, LL M) { return bigmod(a, M - 2, M); }

//mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

int dp[500001][41];
string S, T;

int go(int c, int k, int kmax){
  if(c+k > (int)T.size()) return kmax+1;
  if(c+k == (int)T.size()) return S.size() - c;
  if(c == (int)S.size()) {
    return (int)T.size() - (c+k);
  }
  int &ret = dp[c][k+kmax];
  if(ret != -1) return ret;
  ret = kmax+1;

  int tc = c+k;
  ret = min(ret, (S[c] != T[tc]) + go(c+1, k, kmax));
  if(k-1 >= -kmax) ret = min(ret, 1 + go(c+1, k-1, kmax));
  if(k+1 <= kmax) ret = min(ret, 1 + go(c, k+1, kmax));
  return ret;
}

void solve() {
  int k; cin >> k >> S >> T;
  memset(dp, -1, sizeof dp);
  if(go(0, 0, k) <= k) cout << "Yes\n";
  else cout << "No\n";
}


int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);

  int T = 1;
  //cin >> T; 
  for (int ts = 1; ts <= T; ts++) {
    //cout << "Case #" << ts << ": ";
    solve();
  }
}

提出情報

提出日時
問題 F - Operate K
ユーザ nfssdq
言語 C++ 23 (gcc 12.2)
得点 525
コード長 1399 Byte
結果 AC
実行時間 321 ms
メモリ 131348 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 525 / 525
結果
AC × 3
AC × 83
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt
All hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, sample_01.txt, sample_02.txt, sample_03.txt, small_01.txt, small_02.txt, small_03.txt, small_04.txt, small_05.txt, small_06.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt, test_58.txt, test_59.txt, test_60.txt, test_61.txt, test_62.txt, test_63.txt, test_64.txt, test_65.txt, test_66.txt, test_67.txt, test_68.txt, test_69.txt, test_70.txt
ケース名 結果 実行時間 メモリ
hand_01.txt AC 278 ms 130944 KiB
hand_02.txt AC 260 ms 131028 KiB
hand_03.txt AC 281 ms 131032 KiB
hand_04.txt AC 260 ms 131072 KiB
sample_01.txt AC 33 ms 83512 KiB
sample_02.txt AC 33 ms 83476 KiB
sample_03.txt AC 33 ms 83536 KiB
small_01.txt AC 33 ms 83500 KiB
small_02.txt AC 33 ms 83476 KiB
small_03.txt AC 33 ms 83440 KiB
small_04.txt AC 33 ms 83436 KiB
small_05.txt AC 34 ms 83636 KiB
small_06.txt AC 33 ms 83576 KiB
test_01.txt AC 33 ms 83440 KiB
test_02.txt AC 33 ms 83476 KiB
test_03.txt AC 33 ms 83552 KiB
test_04.txt AC 33 ms 83440 KiB
test_05.txt AC 33 ms 83576 KiB
test_06.txt AC 81 ms 131076 KiB
test_07.txt AC 79 ms 131116 KiB
test_08.txt AC 80 ms 131144 KiB
test_09.txt AC 80 ms 131044 KiB
test_10.txt AC 79 ms 131176 KiB
test_11.txt AC 33 ms 83840 KiB
test_12.txt AC 33 ms 83832 KiB
test_13.txt AC 38 ms 88568 KiB
test_14.txt AC 35 ms 85784 KiB
test_15.txt AC 80 ms 131060 KiB
test_16.txt AC 80 ms 131088 KiB
test_17.txt AC 81 ms 131060 KiB
test_18.txt AC 81 ms 131052 KiB
test_19.txt AC 80 ms 131076 KiB
test_20.txt AC 81 ms 131040 KiB
test_21.txt AC 80 ms 130992 KiB
test_22.txt AC 81 ms 131124 KiB
test_23.txt AC 79 ms 131056 KiB
test_24.txt AC 79 ms 131044 KiB
test_25.txt AC 79 ms 131016 KiB
test_26.txt AC 80 ms 131100 KiB
test_27.txt AC 318 ms 131040 KiB
test_28.txt AC 319 ms 131040 KiB
test_29.txt AC 318 ms 130940 KiB
test_30.txt AC 320 ms 131060 KiB
test_31.txt AC 34 ms 83868 KiB
test_32.txt AC 34 ms 83824 KiB
test_33.txt AC 321 ms 131012 KiB
test_34.txt AC 96 ms 97752 KiB
test_35.txt AC 97 ms 105108 KiB
test_36.txt AC 112 ms 131012 KiB
test_37.txt AC 212 ms 131076 KiB
test_38.txt AC 121 ms 131016 KiB
test_39.txt AC 121 ms 131044 KiB
test_40.txt AC 320 ms 130992 KiB
test_41.txt AC 211 ms 131120 KiB
test_42.txt AC 222 ms 131048 KiB
test_43.txt AC 109 ms 131080 KiB
test_44.txt AC 299 ms 131080 KiB
test_45.txt AC 319 ms 131024 KiB
test_46.txt AC 280 ms 131040 KiB
test_47.txt AC 121 ms 130940 KiB
test_48.txt AC 320 ms 131256 KiB
test_49.txt AC 171 ms 131240 KiB
test_50.txt AC 90 ms 131228 KiB
test_51.txt AC 319 ms 131348 KiB
test_52.txt AC 108 ms 131168 KiB
test_53.txt AC 120 ms 131220 KiB
test_54.txt AC 318 ms 131320 KiB
test_55.txt AC 109 ms 131152 KiB
test_56.txt AC 181 ms 131256 KiB
test_57.txt AC 181 ms 131228 KiB
test_58.txt AC 318 ms 131240 KiB
test_59.txt AC 319 ms 131348 KiB
test_60.txt AC 318 ms 131256 KiB
test_61.txt AC 192 ms 131252 KiB
test_62.txt AC 161 ms 131208 KiB
test_63.txt AC 261 ms 131188 KiB
test_64.txt AC 33 ms 83544 KiB
test_65.txt AC 33 ms 83444 KiB
test_66.txt AC 33 ms 83500 KiB
test_67.txt AC 33 ms 83508 KiB
test_68.txt AC 33 ms 83572 KiB
test_69.txt AC 33 ms 83508 KiB
test_70.txt AC 32 ms 83576 KiB