#include <iostream>
using namespace std;
bool isleap(int n) {
bool ans;
if(n%4==0)
{
if(n%100==0)
{
if(n%400==0)
{
ans=true;
}
else
{
ans=false;
}
}
else
{
ans=true;
}
}
else
{
ans=false;
}
return ans;
}
int day(int y,int m,int d) {
int sum=0,leap[12]={31,29,31,30,31,30,31,31,30,31,30,31},normal[12]={31,28,31,30,31,30,31,31,30,31,30,31};
for(int i=1;i<y-1;i++)
{
if(isleap(i))
{
sum+=366;
}
else
{
sum+=365;
}
}
for(int i=0;i<m-1;i++)
{
if(isleap(y))
{
sum+=leap[i];
}
else
{
sum+=normal[i];
}
}
sum+=d;
return sum;
}
int main() {
int y1,y2,m1,m2,d1,d2;
while(cin>>y1>>m1>>d1>>y2>>m2>>d2)
{
cout<<day(y1,m1,d1)-day(y2,m2,d2)<<endl;
}
return 0;
}
#include
using namespace std;
bool isleap(int n) {
bool ans;
if(n%4==0)
{
if(n%100==0)
{
if(n%400==0)
{
ans=true;
}
else
{
ans=false;
}
}
else
{
ans=true;
}
}
else
{
ans=false;
}
return ans;
}
int day(int y,int m,int d) {
int sum=0,leap[12]={31,29,31,30,31,30,31,31,30,31,30,31},normal[12]={31,28,31,30,31,30,31,31,30,31,30,31};
for(int i=1;i<y-1;i++)
{
if(isleap(i))
{
sum+=366;
}
else
{
sum+=365;
}
}
for(int i=0;i<m-1;i++)
{
if(isleap(y))
{
sum+=leap[i];
}
else
{
sum+=normal[i];
}
}
sum+=d;
return sum;
}
int main() {
int y1,y2,m1,m2,d1,d2;
while(cin>>y1>>m1>>d1>>y2>>m2>>d2)
{
cout<<day(y1,m1,d1)-day(y2,m2,d2)<<endl;
}
return 0;
}
for(int i=1;i<y;i++)
然後最後要加絕對值
題目沒說前面的時間一定是比較晚
#include
using namespace std;
bool isleap(int n) {
bool ans;
if(n%4==0)
{
if(n%100==0)
{
if(n%400==0)
{
ans=true;
}
else
{
ans=false;
}
}
else
{
ans=true;
}
}
else
{
ans=false;
}
return ans;
}
int day(int y,int m,int d) {
int sum=0,leap[12]={31,29,31,30,31,30,31,31,30,31,30,31},normal[12]={31,28,31,30,31,30,31,31,30,31,30,31};
for(int i=1;i<y-1;i++)
{
if(isleap(i))
{
sum+=366;
}
else
{
sum+=365;
}
}
for(int i=0;i<m-1;i++)
{
if(isleap(y))
{
sum+=leap[i];
}
else
{
sum+=normal[i];
}
}
sum+=d;
return sum;
}
int main() {
int y1,y2,m1,m2,d1,d2;
while(cin>>y1>>m1>>d1>>y2>>m2>>d2)
{
cout<<day(y1,m1,d1)-day(y2,m2,d2)<<endl;
}
return 0;
}
for(int i=1;i<y;i++)
然後最後要加絕對值
題目沒說前面的時間一定是比較晚
您的答案為: 227030 正確答案為: 227031
請問那個1天在哪??
#include
using namespace std;
bool isleap(int n) {
bool ans;
if(n%4==0)
{
if(n%100==0)
{
if(n%400==0)
{
ans=true;
}
else
{
ans=false;
}
}
else
{
ans=true;
}
}
else
{
ans=false;
}
return ans;
}
int day(int y,int m,int d) {
int sum=0,leap[12]={31,29,31,30,31,30,31,31,30,31,30,31},normal[12]={31,28,31,30,31,30,31,31,30,31,30,31};
for(int i=1;i<y-1;i++)
{
if(isleap(i))
{
sum+=366;
}
else
{
sum+=365;
}
}
for(int i=0;i<m-1;i++)
{
if(isleap(y))
{
sum+=leap[i];
}
else
{
sum+=normal[i];
}
}
sum+=d;
return sum;
}
int main() {
int y1,y2,m1,m2,d1,d2;
while(cin>>y1>>m1>>d1>>y2>>m2>>d2)
{
cout<<day(y1,m1,d1)-day(y2,m2,d2)<<endl;
}
return 0;
}
for(int i=1;i<y;i++)
然後最後要加絕對值
題目沒說前面的時間一定是比較晚
您的答案為: 227030 正確答案為: 227031
請問那個1天在哪??
第一筆測資是:
2489 06 13
1867 11 11
你的算法會分別少加到2488年 跟 1866年 的天數
然後2488年是閏年 366天
至於1866年是平年 365天
所以少1天
#include <bits/stdc++.h>
using namespace std;
bool isleap(int n) {
bool ans;
if(n%4==0)
{
if(n%100==0)
{
if(n%400==0)
{
ans=true;
}
else
{
ans=false;
}
}
else
{
ans=true;
}
}
else
{
ans=false;
}
return ans;
}
int day(int y,int m,int d) {
int sum=0,leap[12]={31,29,31,30,31,30,31,31,30,31,30,31},normal[12]={31,28,31,30,31,30,31,31,30,31,30,31};
for(int i=1;i<=y-1;i++)
{
if(isleap(i))
{
sum+=366;
}
else
{
sum+=365;
}
}
for(int i=0;i<m-1;i++)
{
if(isleap(y))
{
sum+=leap[i];
}
else
{
sum+=normal[i];
}
}
sum+=d;
return sum;
}
int main() {
int y1,y2,m1,m2,d1,d2;
while(cin>>y1>>m1>>d1>>y2>>m2>>d2)
{
cout<<abs(day(y1,m1,d1)-day(y2,m2,d2))<<endl;
}
return 0;
}
for(int i=1;i<y;i++)
然後最後要加絕對值
題目沒說前面的時間一定是比較晚
您的答案為: 227030 正確答案為: 227031
請問那個1天在哪??
第一筆測資是:
2489 06 13
1867 11 11
你的算法會分別少加到2488年 跟 1866年 的天數
然後2488年是閏年 366天
至於1866年是平年 365天
所以少1天
for(int i=1;i<=y-1;i++)
想了很久,這就可以AC囉
好開心嘿嘿嘿