dalao们救救蒟蒻

P2010 [NOIP2016 普及组] 回文日期

SCLBJKD @ 2018-10-22 12:59:03

#include<bits/stdc++.h>
using namespace std;
int n,m,day1,day2,mon1,mon2,yea1,yea2,ans=0;
int hw(string s)
{
    int x,y;
    x=0;
    y=7;
    while(s[x]==s[y])
    {
        if(s[x]!=s[y]) return 0;
        if(y-x==1) return 1; 
        x++;
        y--;
    }
}
int check(int o)
{
    if((!o%4 && o%100) || !o%400) return 0;
    else return 1;
}
int main()
{
    cin>>n>>m;
    day1=n%100;//n的日 
    day2=m%100;//m的日 
    mon1=n/100%100;//n的月 
    mon2=m/100%100;//m的月 
    yea1=n/10000;//n的年 
    yea2=m/10000;//m的年 
    while(day1!=day2 && mon1!=mon2 && yea1!=yea2)//直到日期相等 
    {
        if(day1==32 && (mon1==1 || mon1==3 || mon1==5 || mon1==7 || mon1==8 || mon1==10 || mon1==12))//大月进月 
        {
            day1=1;
            mon1++;
        }
        if(day1==31 && (mon1==4 || mon1==6 || mon1==9 || mon1==11))//小月进月 
        {
            day1=1;
            mon1++;
        }
        if(day1==29 && mon1==2 && check(yea1))//二月平年进月 
        {
            day1=1;
            mon1++;
        }
        if(day1==30 && mon1==2 && !check(yea1))//二月闰年进月 
        {
            day1=1;
            mon1++;
        }
        if(mon1==13)//月满进年 
        {
            yea1++;
            mon1=1;
            day1=1;
        }
        string da,mo,ye,res;
        stringstream ss;
        ss<<day1; 
        ss>>da;
        ss<<mon1;
        ss>>mo;
        ss<<yea1;
        ss>>ye;
        res=ye+mo+da;//粘起来 
        if(hw(res)) ans++;//如果回文,ans加一 
        day1++;//寻找下一个日期 
    }
    cout<<ans;//输出ans 
}

by AC的荣耀 @ 2018-10-22 13:19:42

@犇字怎么打 我的思路有什么错吗???QAQ


by AC的荣耀 @ 2018-10-22 13:20:03

@犇字怎么打 和他的思路一样


by SCLBJKD @ 2018-10-22 13:20:23

@犇字怎么打 所以我这代码还有救么


by Substitute0329 @ 2018-10-22 13:21:03

@犇字怎么打 chongchong


by UhhhQQQU @ 2018-10-22 13:21:34

@SCLBJKD

这个其实是暴力模拟的方法,可以做出来,但是推荐枚举年份或日期然后对称构造。


by UhhhQQQU @ 2018-10-22 13:21:47

@情谊、暴走

干嘛?


by UhhhQQQU @ 2018-10-22 13:22:23

@SCLBJKD

当然有救啊,但是因为我懒我没有打暴力。


by Substitute0329 @ 2018-10-22 13:22:54

@犇字怎么打 me too!


by Substitute0329 @ 2018-10-22 13:23:16

@SCLBJKD 暴力很好用


by UhhhQQQU @ 2018-10-22 13:24:11

@情谊、暴走

但是代码量嘛···


上一页 | 下一页