第一题:(填空题)
请写出加法竖式中的第一个数和第二个数,两个数之间用空格分隔开。不同字母代表的数字均不相同,首位数字不能为零。如有多组解,输出 ABCD 代表的数更小的那组。
ABCD+EFG=EGAB
直接穷举所有的情况,找出来就行
#include <iostream>
#include<string>
using namespace std;
int main() {
int sum;
string str1,str2,str3;
int Min=100000;
int i,j;
int n;
for(i=1000;i<10000;i++)
{
str1="";
str1=to_string(i);
for(j=100;j<1000;j++)
{
str2="";
str2=to_string(j);
sum=i+j;
str3="";
str3=to_string(sum);
if(str1[0]==str3[2] && str1[1]==str3[3] && str2[0]==str3[0] && str2[2]==str3[1] && sum>=1000 && sum<10000)
{
cout<<i<<" "<<j<<endl;
}
}
}
return 0;
}