题目大意 就是有很多卡片可以沿着桌边向外放,每次可以伸出1/2,1/3,1/4问最少多少卡片才能让一张完成的卡片悬空,题目输入卡片的宽度,输出卡片个数
#include<stdio.h>
int array[550];
int main()
{
int i, j;
double sum = 0;
array[0] = 0;
for(i = 1, j = 1; j < 521; i++)
{
sum += 1.0/(i + 1);
int n = sum * 100;
for(; j <= n; j++)
{
array[j] = i;
}
}
double m;
while(scanf("%lf", &m))
{
if(m == 0.00)
break;
else
{
int p = m * 100;
printf("%d card(s)\n", array[p]);
}
}
return 0;
}