思路:
A和B取值范围在1010比int要大,采用字符串类型,用c++中string可以不用考虑其字符串长度,内部会自行调整。用字符串类型进行存储,后续对其类型进行转换,将得到的数据从字符串类型转换为整型,在c++中sstream函数里的stringstream类型有这功能,对此加以应用。pa和pb要设为long int类型否则用int数据会溢出。
1 #include <cstdio> 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 using namespace std; 6 7 int main() 8 { 9 string s1, s2; 10 string a = ""; 11 string b = ""; 12 char Da, Db; 13 cin >> s1 >> Da >> s2 >> Db; 14 for(int i = 0; i < s1.length(); i++) 15 { 16 if(s1.at(i) == Da) //s1.at()类似指针 17 { 18 a = a + s1.at(i); 19 } 20 } 21 for(int i = 0; i < s2.length(); i++) 22 { 23 if(s2.at(i) == Db) 24 { 25 b = b + s2.at(i); 26 } 27 } 28 long int pa = 0, pb = 0; 29 stringstream ss1, ss2; //包含在sstream函数中,可以将字符串类型转换为整型 30 ss1 << a; //向ss1流中传入a 31 ss1 >> pa; //向pa中写入流入ss1后转换成int类型的值 32 ss2 << b; //向ss2流中传入b 33 ss2 >> pb; //向pb中写入流入ss2后转换成int类型的值 34 cout << pa + pb << endl; 35 36 return 0; 37 }
要对c++函数库应用有所了解,sstream函数具有字符串类型转化为整型的功能。
原文:https://www.cnblogs.com/Anber82/p/11128185.html