HDU 5611 Baby Ming and phone number

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 5611 Baby Ming and phone number相关的知识,希望对你有一定的参考价值。

#include<cstdio>
#include<cstring>
#include<vector>
#include<cmath>
#include<queue>
#include<list>
#include<algorithm>
using namespace std;

int T,n;
char s[20];
long long a,b;
int q1[20],q2[20];

long long f()
{
    if(s[10]==s[9]&&s[10]==s[8]&&s[10]==s[7]&&s[10]==s[6]) return a;
    bool fail=0;
    for(int i=7;i<=10;i++) if(s[i]-s[i-1]!=1) fail=1;
    if(fail==0) return a;
     fail=0;
    for(int i=7;i<=10;i++) if(s[i]-s[i-1]!=-1) fail=1;
    if(fail==0) return a;

    int year=(s[3]-0)*1000+(s[4]-0)*100+(s[5]-0)*10+(s[6]-0);
    int month=(s[7]-0)*10+(s[8]-0);
    int day=(s[9]-0)*10+(s[10]-0);

    if(year>=1980&&year<=2016)
    {
        if(month>=1&&month<=12)
        {
            if( ((0 == year%4)&&(0 != year%100)) ||(0 == year %400) )
            {
                if(day>=1&&day<=q2[month]) return a;
            }
            else
            {
                if(day>=1&&day<=q1[month]) return a;
            }
        }
    }
    return b;
}

int main()
{
    q1[1]=31;
    q1[2]=28;
    q1[3]=31;
    q1[4]=30;
    q1[5]=31;
    q1[6]=30;
    q1[7]=31;
    q1[8]=31;
    q1[9]=30;
    q1[10]=31;
    q1[11]=30;
    q1[12]=31;

    q2[1]=31;
    q2[2]=29;
    q2[3]=31;
    q2[4]=30;
    q2[5]=31;
    q2[6]=30;
    q2[7]=31;
    q2[8]=31;
    q2[9]=30;
    q2[10]=31;
    q2[11]=30;
    q2[12]=31;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d",&n);
        scanf("%lld%lld",&a,&b);
        long long ans=0;
        for(int i=1;i<=n;i++)
        {
            scanf("%s",s);
            ans=ans+f();
        }
        printf("%lld\n",ans);
    }
    return 0;
}

 

以上是关于HDU 5611 Baby Ming and phone number的主要内容,如果未能解决你的问题,请参考以下文章

HDU 5612 Baby Ming and Matrix games

hdu 5612 Baby Ming and Matrix games

hdu5612 Baby Ming and Matrix games (dfs加暴力)

BestCoder Round #69 (div.2) Baby Ming and Weight lifting(hdu 5610)

Baby Ming and Matrix games(dfs计算表达式)

hdu 5616