import java.util.Scanner;

/*
 * Applicazione che calcola la data successiva di un'altra data.
 * Legge dalla tastiera una data - nella forma <giorno> <mese> <anno>.
 * Calcola e visualizza lla data successiva - nella forma <giorno> <mese> <anno>.
 */
public class GiornoSuccessivo {
	public static void main(String[] args) {
		/* data iniziale (oggi) */
		int giornoOggi, meseOggi, annoOggi;
		/* data successiva (domani) */
		int giornoDomani, meseDomani, annoDomani;
		/* durata del mese di oggi */
		int durataMeseOggi;
		/* l'anno di oggi è bisestile */
		boolean annoOggiBisestile;

		/* i mesi dell'anno */
		final int GENNAIO = 1;
		final int FEBBRAIO = 2;
		final int MARZO = 3;
		final int APRILE = 4;
		final int MAGGIO = 5;
		final int GIUGNO = 6;
		final int LUGLIO = 7;
		final int AGOSTO = 8;
		final int SETTEMBRE = 9;
		final int OTTOBRE = 10;
		final int NOVEMBRE = 11;
		final int DICEMBRE = 12;

		Scanner in;    // per la lettura dalla tastiera

		/* crea l'oggetto per la lettura dalla tastiera */
		in = new Scanner(System.in);

		/* lettura della data iniziale (oggi) */
		System.out.print("Data iniziale (giorno mese anno): ");
		giornoOggi = in.nextInt();
		meseOggi = in.nextInt();
		annoOggi = in.nextInt();

		/* calcolo della data del giorno successivo (domani) */
		/* calcola la durata in giorni di questo mese */
		/* si prepara a considerare anche anni bisestili */
		annoOggiBisestile = annoOggi%400==0 || (annoOggi%4==0 && annoOggi%100!=0);
		if (meseOggi==FEBBRAIO && annoOggiBisestile)
			durataMeseOggi = 29;
		else if (meseOggi==FEBBRAIO)
			durataMeseOggi = 28;
		else if (meseOggi==APRILE || meseOggi==GIUGNO || meseOggi==SETTEMBRE || meseOggi==NOVEMBRE)
			durataMeseOggi = 30;
		else
			durataMeseOggi = 31;


		/* tre casi principali: fine anno, fine mese (ma non fine anno), altro giorno */
		if (meseOggi==DICEMBRE && giornoOggi==durataMeseOggi) { // fine anno
			giornoDomani = 1;
			meseDomani = GENNAIO;
			annoDomani = annoOggi + 1;
		} else if (giornoOggi==durataMeseOggi) { // fine mese (ma non fine anno)
			giornoDomani = 1;
			meseDomani = meseOggi + 1;
			annoDomani = annoOggi;
		} else { // altro giorno
			giornoDomani = giornoOggi+1;
			meseDomani = meseOggi;
			annoDomani = annoOggi;
		}

		/* visualizzazione della data del giorno successivo (domani) */
		System.out.print("La data successiva e' ");
		System.out.print(giornoDomani);
		System.out.print(" ");
		System.out.print(meseDomani);
		System.out.print(" ");
		System.out.println(annoDomani);
	}
}
