欧拉计划第4题题解

Largest palindrome product

A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99.

Find the largest palindrome made from the product of two 3-digit numbers.

最大回文乘积

回文数就是从前往后和从后往前读都一样的数。由两个2位数相乘得到的最大回文乘积是 9009 = 91 × 99。

找出由两个3位数相乘得到的最大回文乘积。

解题思路

这道题目没有什么好的思路。想到的办法就是枚举所有的三位数,求它们的乘积,然后在所有的回文乘积里找最大值就是我们的答案。

实现代码如下:

#include <bits/stdc++.h>
using namespace std;
int ans;
bool check(int a) {
    int x = a, b = 0;
    while (x) {
        b = b * 10 + x % 10;
        x /= 10;
    }
    return a == b;
}
int main() {
    for (int i = 100; i < 1000; i ++)
        for (int j = i; j < 1000; j ++)
            if (check(i*j))
                ans = max(ans, i*j);
    cout << ans << endl;
    return 0;
}

答案是 \(906609\)

posted @ 2020-02-17 17:23  quanjun  阅读(207)  评论(0编辑  收藏  举报