[ad_1]
Estoy tratando de solucionar un problema de HackerRank en el que debo concatenar los elementos de fecha en un solo número entero y verificar si el número formado por la concatenación es divisible por 4 o 7. Estoy usando un bucle while para recorrer las fechas entre los fechas dadas, pero mi código imprime 8 en lugar de 5 en la terminal para el caso de prueba con la fecha de inicio “08-02-2025” y la fecha de finalización “09-04-2025”. Ambas fechas son inclusivas.
Lo que he probado:
C#
public class Solution{ static void Main(string args[]){ //read date from the user var input = Console.ReadLine(); var date1 = input.Split(new char[]{' '})[0]; var date2 = input.Split(new char[]{' '})[1]; //Parse date objects out of the strings DateTime A = DateTime.Parse(date1); DateTime B = DateTime.Parse(date2); int lucky = 0; while(A<= B){ //Get a string representation of the date and //replace the hyphens var str = A.ToString("dd-MM-yyyy").Replace("-",""); var i = Int32.Parse(str); if(i%4==0 || i%7 ==0) lucky ++; //Update the day A A = A.AddDays(1); } Console.WriteLine(lucky); } }
[ad_2]
コメント