已知正整数算式:THE+EARTH+VENUS+SATURN+URANUS = NEPTUNE,每个字母对应于0~9不同的数字。
求:七位正整数 NEPTUNE。
不要用ai求解了,它们都翻船了。
一道所有ai都翻船的数学题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
6条回答 默认 最新
a5156520 2025-06-29 10:39关注#include <iostream> #include <algorithm> #include <string> using namespace std; // 给10个字母赋值一个数字,保存到数组letters中 void setValue(string str1, int letters[], char oris[]){ int i, num; char ch; for(i=0; i<10; i++){ ch=str1[i]; num=ch-'0'; letters[oris[i]]=num; } //cout<<letters<<endl; } // 根据给字母赋的值,进行猜数,如果正确,则打印式子,并返回1,如果不对则返回0 int guess(int letters[]){ int t1Num, e1Num, v1Num, s1Num, u1Num, n1Num, o1Num; t1Num=letters['T']*100+letters['H']*10+letters['E']; e1Num=letters['E']*10000+letters['A']*1000+letters['R']*100+letters['T']*10+letters['H']; v1Num=letters['V']*10000+letters['E']*1000+letters['N']*100+letters['U']*10+letters['S']; s1Num=letters['S']*100000+letters['A']*10000+letters['T']*1000+letters['U']*100+letters['R']*10+letters['N']; u1Num=letters['U']*100000+letters['R']*10000+letters['A']*1000+letters['N']*100+letters['U']*10+letters['S']; n1Num=letters['N']*1000000+letters['E']*100000+letters['P']*10000+letters['T']*1000+letters['U']*100+letters['N']*10+letters['E']; if ((t1Num+e1Num+v1Num+s1Num+u1Num)==n1Num){ printf("%d+%d+%d+%d+%d=%d\n", t1Num, e1Num, v1Num, s1Num, u1Num, n1Num); return 1; }else{ //printf("%d,%d,%d,%d,%d,%d\n", t1Num, e1Num, v1Num, s1Num, u1Num, n1Num); return 0; } } int main() { string str = "0123456789"; char t1[10]="THE", e1[10]="EARTH", v1[10]="VENUS", s1[10]="SATURN", u1[10]="URANUS", n1[10]="NEPTUNE", oris[12]="THEARVNUSP"; int letters[256]={0}; int n,m = 1; //scanf("%d",&n); // https://www.cnblogs.com/wwq-19990526/p/8323879.html // ios::sync_with_stdio(false); // cin.tie(0); // cout.tie(0);//使c++输出和c一样快 // int i=0; // https://blog.csdn.net/weixin_29311017/article/details/117009700 // 将0到9十个数字进行全排列,并按式子进行猜数 while (next_permutation(str.begin(), str.end())) { setValue(str, letters, oris); if(guess(letters)==1){ break; } // cout << "str="<<str << endl; // i++; // if(i%100==0){ // getchar(); // } } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用