競技プログラミングで使うために今日からC++の勉強を始めました。
AtCoderの問題をC++で解こうとVisual studioでコードを書いたのですがコンパイルエラーが発生してしまします。
C++
1#include <iostream> 2#include <vector> 3 4using namespace std; 5 6int main() 7{ 8 string s, t; 9 cin >> s >> t; 10 vector<char> u; 11 12 for (int i = 0; i < s.size(); i++) 13 { 14 char x = s[i], y = t[i]; 15 if (x != y) 16 { 17 auto it = find(u.begin(), u.end(), y); 18 if (it != u.end()) 19 { 20 u.push_back(y); 21 } 22 else 23 { 24 puts("No"); 25 exit(0); 26 } 27 } 28 } 29 puts("Yes"); 30 return 0; 31} 32
エラーコードの一部を抜き出すと、
error: no matching function for call to 'find(std::vector<char>::iterator, std::vector<char>::iterator, char&)'
findの引数が合ていないということらしいのですが、変数yの渡し方が間違っているのでしょうか?
また、C++の作法に合わない書き方などありましたらご指摘いただけると助かります。
ちなみに受け取る入力は
azzel apple
といった文字列です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/04/06 15:19