Problema
Ver original (inglês)Retorne o número de dias no month do year no calendário gregoriano. Fevereiro tem 29 dias em anos bissextos: anos divisíveis por 4, exceto aqueles divisíveis por 100, a menos que também sejam divisíveis por 400. Uma função auxiliar is_leap(year) mantém o código organizado.
Implemente days_in_month(year, month).
Entrada
year: O ano. month: O mês, de 1 (janeiro) a 12 (dezembro).
Saída
Retorne o número de dias.
Restrições
1 ≤ year ≤ 9.999; 1 ≤ month ≤ 12
Exemplos
Entrada:
year = 2024
month = 2
Saída esperada:
expected = 29
Entrada:
long long year = 2024;
long long month = 2;
Saída esperada:
long long expected = 29;
Entrada:
long year = 2024;
long month = 2;
Saída esperada:
long expected = 29;
Explicação
2024 é divisível por 4 e não por 100, então é um ano bissexto: 29 dias.
Entrada:
year = 1900
month = 2
Saída esperada:
expected = 28
Entrada:
long long year = 1900;
long long month = 2;
Saída esperada:
long long expected = 28;
Entrada:
long year = 1900;
long month = 2;
Saída esperada:
long expected = 28;
Explicação
1900 é divisível por 100 mas não por 400, então não é um ano bissexto: 28 dias.
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.