蓝桥杯历届-奇妙的数字
奇妙的数字
小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。
你能猜出这个数字是多少吗?
请填写该数字,不要填写任何多余的内容。
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
char s1[11],s2[11];
bool isD(char *a) {
if (strlen(a) < 10) return false;
char b[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};
sort(a, a+strlen(a));
for (int i = 0; i < strlen(a); i++) {
if (a[i] != b[i]) return false;
}
return true;
}
int main() {
int k;
for (k = 1; k < 1000; k++) {
int k1 = k*k;
int k2 = k1*k;
sprintf(s1, "%d", k1);
sprintf(s2, "%d", k2);
strcat(s1, s2);
if (isD(s1)) {
printf("k = %d, s = %s\n", k, s1);
}
}
return 0;
}
答案是69