首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

杭电1408,求大哥大姐帮帮忙找找小弟我的异常,代码就不用贴了,就找小弟我的错。严禁酱油党

2012-03-05 
杭电1408,求大哥大姐帮帮忙找找我的错误,代码就不用贴了,就找我的错。严禁酱油党。#includestdio.hint mai

杭电1408,求大哥大姐帮帮忙找找我的错误,代码就不用贴了,就找我的错。严禁酱油党。
#include<stdio.h>
int main()
{
double v,d;
int i,time;
while(scanf("%lf%lf",&v,&d)==2)
{
time=0;
for(i=1;v>i*d;i++)
{
time=time+(i+1);
v=v-i*d;
}
if(v<=i*d)
{
while(v>0)
{
v=v-d;
time=time+1;
}
}

printf("%d\n",time);
}
return 0;
}

[解决办法]

C/C++ code
#include<iostream>#include<cmath>using namespace std;int main(){    double v,d;    while(cin>>v>>d){        int b=ceil(v/d);        cout<<ceil(((sqrt(1.+8*b)-1)/2+b-1))<<endl;    }}
[解决办法]
首先你要用好代码标签,然后你程序要实现什么功能,没有目的,一些纯数字逻辑的程序很少有人能仔细研究你的程序,最后不是程序问题的话这种像高数一样的程序错误可能需要你自己找
[解决办法]
如下修改可以AC,但说不出确切理由。
#include<stdio.h>
int main()
{
 double v,d;
 int i,time;
 while(scanf("%lf%lf",&v,&d)==2)
 {
 time=0;
 for(i=1;v>i*d;i++)
 {
 time=time+(i+1);
 v=v-i*d;
 }
 if(v<=i*d)
 {
/*
 while(v>0)
 {
 v=v-d;
 time=time+1;
 }
 */
int k = (int)(v/d);
time += k;
if ((v-d*k) > 1e-8) time++;
 }

 printf("%d\n",time);
 }
 return 0;
}

热点排行