3054663_re.c
来自「北大大牛代码 1240道题的原代码 超级权威」· C语言 代码 · 共 42 行
C
42 行
#include <stdio.h>
int n[190], l, f[32770];
void init()
{
int i;
l = 0;
for(i = 1; i*i <= 32768; i++)
{
n[l++] = i*i;
}
}
void dp()
{
int i, j;
f[1] = 1;
for(i = 2; i < 32769; i++)
{
f[i] = 0;
for(j = 0; n[j] < i; j++)
{
f[i] += f[i-n[j]];
}
}
}
int main()
{
int num;
init();
dp();
while(scanf("%d",&num),num)
{
printf("%d\n",num);
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?