intproblem4() { int num = 0; int n = 100; int m = 100; for (int m = 100; m <= 999; m++) { for (int n = 100; n <= 999; n++) { stringstream ss; int nn = n * m; ss << nn; string aa = ss.str(); string bb = aa; reverse(bb.begin(), bb.end()); // cout << aa << " " << bb; if (aa.compare(bb) == 0) { num = MAX(num, n * m); } } cout << m << endl; } return num; }
intproblem7() { vector<int> prime; for (int i = 2; ; i++) { int n = 0; for (int k = 2; k < i; k++) { if (i % k == 0) { n++; break; } } if (n == 0) { prime.push_back(i); cout << i << endl; } if (prime.size() == 10001) return prime.back(); } }
intproblem8() { longlong out = 0; string number = "7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450"; vector<int> numbers; for (auto i : number) { numbers.push_back(i - 48); } for (int i = 0; i < numbers.size() - 13; i++) { longlong num = 1; for (int k = i; k < i + 13; k++) { num = num * numbers.at(k); } cout << i <<" "<<out<< endl; out = MAX(out, num); }
/*for (int i = 0; i < 13; i++) { num = num * numbers.at(i); out = num; } for (int i = 13; i < numbers.size(); i++) { num = num * numbers.at(i); num = num / numbers.at(i - 13); out = MAX(out, num); }*/ return out; }
voidproblem9() { int a = 1; int b = 1; for (a = 1; a < 1000; a++) { for (b = 1; b < 1000; b++) { int cc = a * a + b * b; int c = 1000 - a - b; if (c * c == cc) cout << "a" << a << "b" << b << "c" << c << "out:"<<a*b*c<<endl; } } }
voidproblem10() { vector<int> prime; longlong sum=0; for (int i = 2; i<2000000; i++) { int n = 0; int ss = sqrt(i); for (int k = 0; k < prime.size(); k++) { if (i % prime.at(k) == 0) { n++; break; } if (prime.at(k) > ss) break; } //for (int k = 2; k < i; k++) //{ // if (i % k == 0) { // n++; break; // } //} if (n == 0) { prime.push_back(i); sum += i; cout << i << endl;; } } cout << sum; }