소문자로만 구성된 두 개의 문자열 s와 t가 있다고 가정합니다. 이제 문자열 t는 문자열 s를 무작위로 섞어서 생성한 다음 임의의 인덱스에 문자를 하나 더 추가합니다. t에 추가된 문자를 찾아야 합니다.
따라서 입력이 "mnopq","pqmnot"과 같으면 출력은 "t"가 됩니다. 이것은 추가 문자입니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
-
합계 :=0, 합계 :=0
-
for initialize i :=0, i
-
sSum :=sSum + s[i]
-
-
j 초기화의 경우:=0, j
-
tSum :=tSum + t[j]
-
-
(tSum - sSum)을 문자로 반환
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
char findTheDifference(string s, string t) {
int sSum = 0;
int tSum = 0;
for (int i = 0; i < s.length(); i++) {
sSum += s[i];
}
for (int j = 0; j < t.length(); j++) {
tSum += t[j];
}
return char(tSum - sSum);
}
};
main(){
Solution ob;
cout << (ob.findTheDifference("mnopq","pqmnot"));
} 입력
"mnopq","pqmnot"
출력
t