ABC232-B Caesar Cipher(https://atcoder.jp/contests/abc232/tasks/abc232_b)
にて、自分の提出したコードが通らず、模範解答を参考にstringの宣言部分をループ内に入れたらACになったのですが、なぜ最初自分が提出したコードが弾かれてループ内に入れたらACになるのでしょうか...?
コードの概要は以下で、開発環境はAtCoderのコードテストです。
初心者の質問で申し訳ないのですが、お願いします。
C++
1#include <bits/stdc++.h> 2#include <string> 3#define _GLIBCXX_DEBUG 4#define rep(i, n) for (int i = 0; i < (int)(n); i++) 5 6using namespace std; 7 8int main(){ 9 string s,t; 10 cin>>s>>t; 11 bool flag=false; 12 //string m=s; ここで宣言をしたらWA 13 rep(k,26){ 14 //string m=s; ここで宣言をしたらAC 15 rep(i,s.size()){ 16 m.at(i)='a'+(m.at(i)+k)%26; 17 } 18 if(t==m) 19 flag=true; 20 } 21 if(flag) 22 cout<<"Yes"<<endl; 23 else 24 cout<<"No"<<endl; 25 26}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/04/19 01:36