冬至福利给了道简单题,可以用datetime类简单搞定的。
public class Solution {
public int DayOfYear(string date) {
DateTime dt = DateTime.ParseExact(date, "yyyy-MM-dd",System.Globalization.CultureInfo.CurrentCulture);
return dt.DayOfYear;
}
}
如果用小学知识判断闰年的话,就这么做。
class Solution {
public int dayOfYear(String date) {
int[] everyMonthDays = {31,28,31,30,31,30,31,31,30,31,30,31};
String[] info = date.split("-");
int year = Integer.valueOf(info[0]);
int month = Integer.valueOf(info[1]);
int day = Integer.valueOf(info[2]);
if(year % 100 == 0)
{
if(year % 400 == 0)
{
everyMonthDays[1] = 29;
}
}
else if(year % 4 == 0)
{
everyMonthDays[1] = 29;
}
int ans = 0;
for(int i = 0;i < month - 1;i++)
{
ans += everyMonthDays[i];
}
ans += day;
return ans;
}
}