?? cubic69.cpp
字號:
#include<stdio.h>
#include<string.h>
int main()
{//freopen("input.txt","r",stdin);
// freopen("output.txt","w",stdout);
int a[100],i,len,t,b[100];
char s[100];
int x,y,z,p;
while (scanf("%s",s)!=EOF)
{
len=strlen(s);
for (i=len-1;i>=0;i--)
{
a[len-1-i]=s[i]-'0';
b[i]=0;
}
t=0;
loop: while (t!=len)
{
if (t!=0)
{
x=0;y=0;z=0;
for (x=0;x<=t;x++)
for (y=0;y<=x;y++)
{ z=t-x-y;
if (z>=0&&z<=y)
{
if (x==y&&y==z)
p=1;
else if ((x==y&&y!=z)||(y==z&&x!=y))
p=3;
else p=6;
if (x==t)
{
for (i=0;i<=9;i++)
if ((3*i*b[0]*b[0]+b[t])%10==a[t])
{
b[t+1]=(3*i*b[0]*b[0]+b[t])/10;
b[t]=i;
t++;
goto loop;
}
}
else
{
b[t]+=p*b[x]*b[y]*b[z];
}
}
}
}
else
{
for (i=0;i<=9;i++)
if ((i*i*i)%10==a[t])
{
b[t]=i;
b[t+1]=i*i*i/10;
break;
}
t++;
}
}
int flag=0;
for (i=len-1;i>=0;i--)
{
if (b[i]!=0||flag==1)
{
printf("%d",b[i]);
flag=1;
}
}
printf("\n");
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -