1251:[ブルーブリッジカップ2015予選]銀河爆弾

タイトル説明

多くの人工宇宙のランドマークとして使用さXにおける銀河の広大なスペースに惑星X「爆弾」を浮動。
各爆弾の爆発は何日に設定することができた後。
例えば:アルファ爆弾が15日にタイミングを合わせ、2015年1月1日置き、それは2015年1月16日に爆発しました。
ベータ爆弾は、B、Cの月の配置の日はタイミングがあるのn日、あなたはその爆発の正確な日付を計算し、あります。
入力
入力データの複数のセットがあり、各データ入力ライン、入力4つの正の整数の各ライン、B、C、N
の入力は1000年1月1日2020年1月1日、日付と有効な間の日付を確実にします。
ないより千nより
出力
すなわち2〜4年の日付2月2日YYYY-MM-DDの形式で、この日付を記入してください。例えば:2015年2月19日に
書かれたとおりにしてください。他の単語や記号が表示されないことができます。
サンプル入力
、2015年1 1 15
2014 1000 9 11
サンプル出力
2015年1月16日
2017年8月5日

#include<iostream>
#include<cstdio>
#include<cstdlib>
using namespace std;
int main()
{
	int leap[2][13]={0,31,28,31,30,31,30,31,31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31};
	int y,m,d;
	int n;
	while(scanf("%d %d %d %d",&y,&m,&d,&n)!=EOF){
		while(n>0){
			int t=((y%4==0&&y%100!=0)||(y%400==0));
			n--;
			d++;
			if(d>leap[t][m]){
				d=1;
				m++;
			}
			if(m==13){
				m=1;
				y++;
			}
		}
		if(m<10&&d<10)printf("%d-0%d-0%d\n",y,m,d);
		
		else if(m<10)printf("%d-0%d-%d\n",y,m,d);
		
		else if(d<10)printf("%d-%d-0%d\n",y,m,d);
		
		else printf("%d-%d-%d\n",y,m,d);
	}
}
リリース元の4件の記事 ウォンの賞賛0 ビュー66

おすすめ

転載: blog.csdn.net/qq_44123044/article/details/104333957