ACM 浙江大学

羽飞 2010-12-07 06:00:20
我在浙江大学的Acm上传一个代码,提交后为啥总是结果错误,结果要怎么才符合要求,我提交的问题是1122号,提交了好几个代码,原来是编译错误,转到段错误,现在是结果错误,我相信运行是正确的,应该是输出和要求不一致
谁告诉些注意事项?
...全文
390 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
羽飞 2010-12-07
  • 打赏
  • 举报
回复
和原文不一样了,好多空格给我省了
特别是printf里面的空格,我的都是按照要求添加的空格,咱这贴图不方便,要不然就截图了
羽飞 2010-12-07
  • 打赏
  • 举报
回复
上代码:
#include <stdio.h>

int Count(int h0, int m0, int h1, int m1)
{
const int cm0 = 12 * m0;
const int cm1 = 12 * m1;
int ch0 = h0 * 60 + m0;
const int ch1 = h1 * 60 + m1;

const int loop = ( (ch1 + 720 - ch0) % 720 ) / 60;
int dis = ( (ch0 - cm0) + 720 ) % 720;
int nCount = 0;
int i = 0;
for (i = 0; i < loop; i++)
{
nCount += (dis < 11 * 60) ;
dis += 60;
dis %= 720;
}

ch0 += 60 * i;
ch0 %= 720;
nCount += ( ( (ch0 - cm0) + 720) % 720 ) < ( ((cm1 - cm0) + 720) % 720 );
return nCount;
}

int main(void)
{
int h0 = 0;
int h1 = 0;
int m0 = 0;
int m1 = 0;
printf("Initial time Final time Passes\n");
while (scanf("%d %d %d %d", &h0, &m0, &h1, &m1) != EOF)
{
printf(" %0.2d:%0.2d %0.2d:%0.2d %2d\n",
h0, m0, h1, m1, Count(h0, m0, h1, m1));
}

/*fclose(fp);*/
return 0;
}
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1122这是那道题
hdusunny44 2010-12-07
  • 打赏
  • 举报
回复
没事,慢慢来
把你的代码贴出来,看看有没什么特殊情况没考虑到的
半斗 2010-12-07
  • 打赏
  • 举报
回复
代码都不上怎么知道你哪里错了
火狐狸 2010-12-07
  • 打赏
  • 举报
回复
贴出来题目和代码看看
Csuxiaowu 2010-12-07
  • 打赏
  • 举报
回复
你相信有什么用
离骚GG 2010-12-07
  • 打赏
  • 举报
回复
可能是标准的问题吧
以前在杭电上提交也出现过那样的原因 比如说 用long可以 但long int的时候就会通不过 要多检查下这类型的错误
ACM题目有时候挺严格的 特别是格式 没说让你换行的你换了行(特别注意在输出时的最后一行)也会提示错误,但妳的问题应该不再这里

总之,要用尽量标准的语言来作出完全标准的输出结果

嘿嘿 以前我也做过不少ACM题,需要耐心、毅力 希望楼主不断进步,成为ACM界的一大牛人

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧