#include <iostream> #include <sstream> using namespace std; #include <string.h> //需要判断计算之后的数要满足 4位数和6位数的条件 还要将这10个字符串算出来不能有重复的数字 class Soultion { public: int calculate() { stringstream sstr1; //创造一个输入流 stringstream sstr2; stringstream sstr3; string str1; string str2; string str3; for (int num = 1; num < 100; num++) { int numCubic = num * num * num; int numQuartic = num * num * num * num; sstr1.str(""); //这里进行一个清空操作 这个清空操作还需要 sstr2.str(""); sstr3.str(""); str1 = ""; str2 = ""; str2 = ""; sstr1 << numCubic; //第一个问题 好像对于str1 sstr好像并没有清空 str1 = sstr1.str(); if (str1.size() ==4) { sstr2 << numQuartic; str2 = sstr2.str(); if (str2.size() == 6) //判断是否是需要的数字 { sstr3 << numCubic << numQuartic; str3 = sstr3.str(); //int len = str3.size(); if (str3[0] != str3[1] != str3[2] != str3[3] != str3[4] != str3[5] != str3[6] != str3[7] != str3[8] != str3[9]) { return num; } } } } } }; int main() { Soultion sou; cout << sou.calculate() << endl; }
蓝桥杯学习历程记录1
最新推荐文章于 2024-09-29 23:50:13 发布