如何评价/lb
  • 板块灌水区
  • 楼主Joseph_J
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/1/25 16:08
  • 上次更新2024/1/25 19:02:18
查看原帖
如何评价/lb
981833
Joseph_J楼主2024/1/25 16:08

rt

#include<bits/stdc++.h>

using namespace std;
const int maxn=100005;
int l,r,ans=0;
int a[maxn];
struct node{
	int dgt1,dgt2,dgt3;
	int dgt4,dgt5,dgt6;
}d[maxn];
int sep(int num,int ot_dgt){
	
	int dgt_num,j,ot;
	for(int i=1;i<=6;i++){
		j=pow(10,i);
		if(num%j==num){
			dgt_num=i-1;
		}
	}
	if(ot_dgt==dgt_num){
		ot=num/pow(10,ot_dgt);
	}else if(ot_dgt==1){
		ot=num%10;
	}else{
		ot=(num-num/(pow(10,ot_dgt)))/pow(10,ot_dgt-1);
	}
	
	return ot;
}
int main(){
	
	ios::sync_with_stdio(false);
	cin.tie(0);cout.tie(0);
	cin>>l>>r;
	for(int i=l;i<=r;i++) cin>>a[i];
	
	for(int i=l;i<=r;i++){
		if(i<10){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
		}else if(10<=i&&i<=99){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
			d[i].dgt2=sep(i,2);
			if(d[i].dgt2==2) ans++;
		}else if(100<=i&&i<=999){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
			d[i].dgt2=sep(i,2);
			if(d[i].dgt2==2) ans++;
			d[i].dgt3=sep(i,3);
			if(d[i].dgt3==2) ans++;
		}else if(1000<=i&&i<=9999){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
			d[i].dgt2=sep(i,2);
			if(d[i].dgt2==2) ans++;
			d[i].dgt3=sep(i,3);
			if(d[i].dgt3==2) ans++;
			d[i].dgt4=sep(i,4);
			if(d[i].dgt4==2) ans++;
		}else if(10000<=i&&i<=99999){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
			d[i].dgt2=sep(i,2);
			if(d[i].dgt2==2) ans++;
			d[i].dgt3=sep(i,3);
			if(d[i].dgt3==2) ans++;
			d[i].dgt4=sep(i,4);
			if(d[i].dgt4==2) ans++;
			d[i].dgt5=sep(i,5);
			if(d[i].dgt5==2) ans++;
		}else if(100000<=i&&i<=999999){
			d[i].dgt1=sep(i,1);
			if(d[i].dgt1==2) ans++;
			d[i].dgt2=sep(i,2);
			if(d[i].dgt2==2) ans++;
			d[i].dgt3=sep(i,3);
			if(d[i].dgt3==2) ans++;
			d[i].dgt4=sep(i,4);
			if(d[i].dgt4==2) ans++;
			d[i].dgt5=sep(i,5);
			if(d[i].dgt5==2) ans++;
			d[i].dgt6=sep(i,6);
			if(d[i].dgt6==2) ans++;
		}
	}
	cout<<ans;
	
	return 0;
}
2024/1/25 16:08
加载中...