Project Euler P4 Largest palindrome product 题解
Posted lajiccf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Project Euler P4 Largest palindrome product 题解相关的知识,希望对你有一定的参考价值。
考虑暴力。
我们做两重循环,枚举乘数和被乘数,判断回文取 (max) 即可。
时间复杂度 (O(900^2)=O(810000))。
#include <bits/stdc++.h>
using namespace std;
int a[10],tot,ans;
bool hw(int n) {
memset(a,0,sizeof a);
tot=0;
while(n) {
a[++tot]=n%10;
n/=10;
}
for(int i=1;i<=tot/2;i++)
if(a[i]!=a[tot-i+1])
return 0;
return 1;
}//分拆位数判定回文
int main() {
for(int i=999;i>=100;i--)
for(int j=999;j>=100;j--)
if(hw(i*j))
ans=max(ans,i*j);//取最大值
printf("%d",ans);
}
以上是关于Project Euler P4 Largest palindrome product 题解的主要内容,如果未能解决你的问题,请参考以下文章
Project Euler:Problem 61 Cyclical figurate numbers