cf896E UKE求助
查看原帖
cf896E UKE求助
779961
tang_tang_123456789楼主2022/12/23 09:24
#pragma comment(linker,"/stack:200000000")
#pragma GCC optimize("Ofast,no-stack-protector")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#include<bits/stdc++.h>
using namespace std;
int n,m,a[100001];
double x;
inline int read() {
	int x=0,f=1;
	char ch=getchar();
	while(ch<'0'||ch>'9') {
		if(ch=='-')
		            f=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9') {
		x=(x<<1)+(x<<3)+(ch^48);
		ch=getchar();
	}
	return x*f;
}
int main() {
	n=read();
	m=read();
	for (int i=1;i<=n;i++) {
		a[i]=read();
	}
	while(m--) {
		register int l,r,cnt=0,opt;
		opt=read(),l=read(),r=read(),x=read();
		if(opt==1) {
			for (register int i=l;i<=r;i++) {
				a[i]-=(a[i]>x)?x:0;
			}
		} else {
			for (register int i=l;i<=r;i++) {
				cnt+=(a[i]==x);
			}
			printf("%d",cnt);
			cout<<endl;
		}
	}
	return 0;
}
2022/12/23 09:24
加载中...