結果

問題 No.721 Die tertia (ディエ・テルツィア)
ユーザー kat0rik
提出日時 2019-08-12 19:00:59
言語 Go
(1.23.4)
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 578 bytes
コンパイル時間 11,557 ms
コンパイル使用メモリ 239,668 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-09-17 06:33:06
合計ジャッジ時間 11,452 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import (
	"fmt"
	"strconv"
)

//                     1,   2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12
var days = [13]int{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}

func main() {
	var s string
	fmt.Scan(&s)
	y, _ := strconv.Atoi(s[0:4])
	m, _ := strconv.Atoi(s[5:7])
	d, _ := strconv.Atoi(s[8:10])
	if y%4 == 0 && (y%100 != 0 || y%400 == 0) {
		// leap year
		days[2] = 29
	}
	// fmt.Println("y", y, "m", m, "d", d, "days", days)
	d += 2
	if days[m] < d {
		d -= days[m]
		m++
		if 12 < m {
			y++
			m = 1
		}
	}

	fmt.Printf("%04d/%02d/%02d\n", y, m, d)
}
0