สมมติว่าเรามีสตริงสองสตริง s และ t ซึ่งประกอบด้วยตัวอักษรพิมพ์เล็กเท่านั้น ตอนนี้ สตริง t ถูกสร้างขึ้นโดยการสุ่มสตริง s จากนั้นเพิ่มตัวอักษรอีกหนึ่งตัวที่ดัชนีสุ่ม เราต้องหาตัวอักษรที่เพิ่มมาใน t.
ดังนั้น หากอินพุตเป็นเหมือน "mnopq","pqmnot" ผลลัพธ์จะเป็น "t" นี่คือตัวอักษรพิเศษ
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
-
sSum :=0, tSum :=0
-
สำหรับการเริ่มต้น i :=0 เมื่อฉัน
-
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