読者です 読者をやめる 読者になる 読者になる

メモ

yukicoderで遊んでいる競プロゆるふわ勢

yukicoder No.188 HAPPY DAY

問題はこちら
No.188 HAPPY DAY - yukicoder

ちょっと考えればプログラムを回さなくても解ける
各日付に対し、HAPPY DAYとなるような月は存在すればただひとつに決まる。
1~28日は、12ヶ月いずれにも存在し、十の位と一の位の和が明らかに12以下になるので、必ず1つHAPPY DAYが対応する
29日は11月でOK、30日は3月でOK、31日は4月でNGとなるので、結局求める答えは30

a;main(){a=!puts("30");}

…Cでやる意味はあるのか


実際にプログラムで解くとしたらこうだろうか

int main(){
	int i,j,s=0,d[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
	for(i=1;i<=12;i++)for(j=1;j<=d[i];j++)if(i==j/10+j%10)s++;
	printf("%d",s);
	return 0;
}