acm人见人爱a+b人见人爱A+BTimeLimit:200-查字典问答网
分类选择

来自申桂英的问题

  acm人见人爱a+b人见人爱A+BTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):15976AcceptedSubmission(s):10420ProblemDescriptionHDOJ上面已经有10来道A+B的题目了,相信这些题目曾

  acm人见人爱a+b

  人见人爱A+BTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)

  TotalSubmission(s):15976AcceptedSubmission(s):10420

  ProblemDescription

  HDOJ上面已经有10来道A+B的题目了,相信这些题目曾经是大家的最爱,希望今天的这个A+B能给大家带来好运,也希望这个题目能唤起大家对ACM曾经的热爱.

  这个题目的A和B不是简单的整数,而是两个时间,A和B都是由3个整数组成,分别表示时分秒,比如,假设A为344556,就表示A所表示的时间是34小时56秒.

  Input

  输入数据有多行组成,首先是一个整数N,表示测试实例的个数,然后是N行数据,每行有6个整数AH,AM,AS,BH,BM,BS,分别表示时间A和B所对应的时分秒.题目保证所有的数据合法.

  Output

  对于每个测试实例,输出A+B,每个输出结果也是由时分秒3部分组成,同时也要满足时间的规则(即:分和秒的取值范围在0~59),每个输出占一行,并且所有的部分都可以用32位整数表示.

  SampleInput

  2

  123456

  344556122334

  SampleOutput

  57947930

  下面是我做的

  #include

  intmain()

  {

  intn,hour=0,min=0,sec=0,i;

  inthour2,min2,sec2;

  inthour1,min1,sec1;

  inthours,minutes,seconds;

  while(scanf("%d",&n)!=EOF)

  {

  while(n--)

  {

  scanf("%d%d%d%d%d%d",&hour1,&min1,&sec1,&hour2,&min2,&sec2);

  seconds=sec2+sec1+sec;

  if(seconds>=60)

  {

  min=seconds/60;

  seconds=seconds%60;

  }

  minutes=min+min1+min2;

  if(minutes>=60)

  {

  hour=minutes/60;

  minutes=minutes%60;

  }

  hours=hour1+hour2+hour;

  printf("%d%d%dn",hours,minutes,seconds);

  hours=0;

  hour1=0;

  hour2=0;

  minutes=0;

  min1=0;

  min2=0;

  seconds=0;

  sec1=0;

  sec2=0;

  }

  }

  return0;

  }

  编译测试都没问题.

  就是wronganswer!

  ac了.少了个

  hours=0;

  hour1=0;

  hour2=0;

  hour=0;

  minutes=0;

  min1=0;

  min2=0;

  min=0;

  seconds=0;

  sec1=0;

  sec2=0;

  sec=0;

1回答
2020-07-1716:50
我要回答
提示:回答问题需要登录哦!
雷少刚

  #include<stdio.h>

  int main(){

  long a[3],b[3],t[3]={0};

  long nCase,i,j;

  scanf("%ld",&nCase);

  for(i=0;i<nCase;i++){

  for(j=0;j<3;j++)

  scanf("%ld",&a[j]);

  for(j=0;j<3;j++)

  scanf("%ld",&b[j]);

  for(j=0;j<3;j++)

  t[j]=a[j]+b[j];

  if(t[2]>=60){

  t[1]++;

  t[2]-=60;

  }

  if(t[1]>=60){

  t[0]++;

  t[1]-=60;

  }

  for(j=0;j<3;j++)

  if(j==2)

  printf("%ldn",t[j]);

  else

  printf("%ld ",t[j]);

  }

  return 0;

  }

2020-07-17 16:54:00
大家都在问
最新问答