码风良好,水橙代码球条 玄关
  • 板块灌水区
  • 楼主Cyndi20121226
  • 当前回复9
  • 已保存回复9
  • 发布时间2024/10/13 19:31
  • 上次更新2024/10/13 21:49:16
查看原帖
码风良好,水橙代码球条 玄关
1017555
Cyndi20121226楼主2024/10/13 19:31

rt,wgzs

有个70的,还有个零分的。

00:

#include<iostream>
using namespace std;
#define ll long long
ll a,b;
ll ans = 0;
bool Check(ll n,ll y){
	ll m = n/100;
	ll d = n%100;
		if (m >= 1 && m <= 12){
			if (m == 1|| m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12){//有31天
				if (d >= 1 && d <= 31){
					return true;
				}
			}
			if (m == 2){
				if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0){
					if (d >= 1 && d <= 29){
						return true;
					}
				}
				else{
					if (d >= 1 && d <= 28){
						return true;
					}
				}
			}
			else{
				if (d >= 1 && d <= 30){
					return true;
				}
			}
		}
		return false;
}
int main(){
    freopen("dates.in","r",stdin);
    freopen("dates.out","w",stdout);
	cin >> a >> b;
	ll va = a;
	ll vb = b;
	a /= 10000;
	b /= 10000;
	cout << a << " " << b << endl;
	for (int i = a;i <= b;i++){
		ll x = i%10*1000 + (i/10-i/100*10)*100 + (i/100-i/1000*10)*10 + i/1000;
		if (Check(x,i)){
			ll m1 = x/100;
			ll d1 = x%100;
            ll vaal = x%10*1000 + (x/10-x/100*10)*100 + (x/100-x/1000*10)*10 + x/1000;
            if (i == a || i == b){
                if (m1 >= va/100-(a*100) && m1 <= vb/100-((vb/10000)*100)){
                    if (d1 >= va%100 && d1 <= vb %100){
                            ans++;
                    }
                }
            }
            else{
                ans++;
            }
		}
	}
	cout << ans;
	return 0;

}
//20101010     /100 = 201010 - ((20101010/10000)*100);
//  va/100-((va/10000)*100);

7070

#include<iostream>
using namespace std;
#define ll long long
ll a,b;
ll ans = 0;
bool Check(ll n,ll y){
	ll m = n/100;
	ll d = n%100;
		if (m <= 12){
			if (m == 1|| m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12){//有31天
				if (d <= 31){
					return true;
				}	 
			}
			if (m == 2){
				if (y % 4 == 0 || y % 400 == 0){
					if (d <= 29){
						return true;
					}
				}
				else{
					if (d <= 28){
						return true;
					}
				}
			}
			else{
				if (d <= 30){
					return true;
				}
			}
		}
		return false;
}
int main(){
	cin >> a >> b;
	ll va = a;
	ll vb = b;
	a /= 10000;
	b /= 10000;
//	cout << a << " " << b << endl; 
	for (int i = a;i <= b;i++){
		ll x = i%10*1000 + (i/10-i/100*10)*100 + (i/100-i/1000*10)*10 + i/1000; 
		if (Check(x,i)){
			ll m1 = x/100;
			ll d1 = x%100;
			if (m1 >= va/100-((va/10000)*100) && m1 <= vb/100-((vb/10000)*100)){
				if (d1 >= va%100 && d1 <= vb %100){
					ans++;
				}
			}
		}
	}
	cout << ans;
	return 0;
	
}
//20101010     /100 = 201010 - ((20101010/10000)*100);
//  va/100-((va/10000)*100);              
2024/10/13 19:31
加载中...