啊 做了好几道用数组实现对应的题,做这个有关年份的题的时候还是忘记了,用了循环 多浪费时间啊
别的都没啥问题
代码:
(头文件乱七八糟是因为懒得改了)
// acm.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include "math.h"
#include <string.h>//
#include <algorithm>//n*log2(n) qsort函数
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int month[7]={1,3,5,7,8,10,12};
int in(int x)
{
int in=0;
for(int i=0;i<7;i++)
{
if(x==month[i])
{
in=1;//in等于1时则该月有31天
break;
}
}
return in;
}
void main()
{
int n=0,sum=0;
int st_m,en_m,st_d,en_d,st_n,en_n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>st_m>>st_d>>st_n>>en_m>>en_d;
sum=0;
for(int j=st_m;j<en_m;j++)
{
if(in(j)==1)
sum+=31;
if(j==2)
sum+=28;
if(in(j)==0&&j!=2)
sum+=30;
}
sum=sum-st_d+en_d;
sum;
cout<<st_n*pow(2,sum)<<endl;
}
}