AOJ1179 Millennium問題について
Posted: 2012年12月09日(日) 17:27
現在こちらのサイト(http://www.cs.titech.ac.jp/icpc2012/icp ... ll_en.html)のAに取り組んでいるのですが、表示が以下のようになります。括弧内の本来ならば出力されるべきとその横の数値のずれを書き足しました。数値のずれが小さいし、ものによっては合っているものもありどこが間違っているのかわかりません。アドバイスよろしくお願いします。
8
1 1 1
196470(196470) 合ってる
344 3 1
128974(128976) -2
696 5 1
59710(59710) 合ってる
182 9 5
160712(160715) -3
998 8 7
251(252) -1
344 2 19
128975(128977) -2
696 4 19
59712(59712) 合ってる
999 10 20
3(1) +2
8
1 1 1
196470(196470) 合ってる
344 3 1
128974(128976) -2
696 5 1
59710(59710) 合ってる
182 9 5
160712(160715) -3
998 8 7
251(252) -1
344 2 19
128975(128977) -2
696 4 19
59712(59712) 合ってる
999 10 20
3(1) +2
#include <stdio.h>
int main(void){
int i=0,n,y,m,d; //n=データセット数, y=year, m=month, d=day
scanf("%d",&n); //データセット数を入力
while(i < n){ //データセット数の数だけループ
scanf("%d%d%d",&y,&m,&d);
int j=1,k=1;
int d_sum=d; //日の合計
int m_sum=10*(y-1)+m; //月の合計
//日数の合計値を計算
while(j < y){ //年の数だけループを回す
while(k < m_sum){ //月の数だけループを回す
if(j%3==0 || k%2==1){ //3で割れる年か2で割れない(大の月)月
d_sum += 20;
}else{
d_sum += 19;
}
k++;
if(k%11==0) break;
}
j++;
}
printf("%d\n",196471-d_sum);
i++;
}
return 0;
}