using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication3 { public class Program { static void Main(string[] args) { new Program().Main2(Console.In, Console.Out); } public void Main2(TextReader reader, TextWriter writer) { var lastDays = new Dictionary() // 月ごとの最終日 { { 1, 31 }, { 2, 28 }, { 3, 31 }, { 4, 30 }, { 5, 31 }, { 6, 30 }, { 7, 31 }, { 8, 31 }, { 9, 30 }, { 10, 31 }, { 11, 30 }, { 12, 31 }, }; //----------------------------- // 初期入力 //----------------------------- var date = reader.ReadLine().Split('/'); var year = int.Parse(date[0]); var month = int.Parse(date[1]); var day = int.Parse(date[2]); //----------------------------- // うるう年の場合は29日に設定 //----------------------------- if(CheckLeapYear(year)) { lastDays[2] = 29; } //----------------------------- // メインロジック //----------------------------- day += 2; if (day > lastDays[month]) { // 二日後、月をまたぐ場合は1月プラス day = day % lastDays[month]; month++; if(month > 12) { // 12月を超えた場合は1年プラス month = month % 12; year++; } } //----------------------------- // 結果確認 //----------------------------- writer.WriteLine($"{year}/{month.ToString("D2")}/{day.ToString("D2")}"); } /// /// うるう年判定 /// /// 年 /// true: うるう年 false: うるう年でない public bool CheckLeapYear(int year) { // 参考:http://tomoprog.hatenablog.com/entry/2016/03/01/004755 if (year % 400 == 0) return true; if (year % 4 == 0 && year % 100 == 0) return false; if (year % 4 == 0) return true; return false; } } }