#include <cstdio>
#include <cstring>
#include <ctime>
#include <cstdlib>
//交换字符串
void swap(char * s, char * f, int len)
{
for (int i = len; i > 0; i--)
{
f[len - i] = s[i - 1];
}
f[len] = '\0';
}
int main(int argc, char * argv[])
{
time_t clock = time(0);
long int sum;
char str[7], fstr[7];
int temp = 0; //标记使循环退出
for (long int s = 998001; s > 10000; s--)
{
sprintf(str, "%lu", s);
swap(str, fstr, strlen(str));
if (!strcmp(str, fstr))
{
for (long int i = 999; i > 100; i--)
{
for (long int j = 999; j > 100; j--)
{
if (i * j == s)
{
printf("%lu * %lu = %lu\n", i, j, s);
temp = 1;
if (temp)
break;
}
}
if (temp)
break;
}
}
if (temp)
break;
}
printf("time = %d", time(0) - clock);
fputc('\n', stdout);
system("pause");
return 0;
}
结果为 993 * 913 = 906609 |