Submission #1172860

#TimeUsernameProblemLanguageResultExecution timeMemory
1172860bahaktlSimple game (IZhO17_game)C++20
22 / 100
1095 ms1228 KiB
#include <bits/stdc++.h>   
using namespace std;
#define int long long
#define pb push_back
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
const int inf=1e16;
const int N=2e5+10;
const int mod=1e9+7;

signed main () {
	ios_base::sync_with_stdio(false); cin.tie(nullptr);
	int n,m;
	cin>>n>>m;
	int h[n+1];
	for(int i=1;i<=n;i++) {
		cin>>h[i];
	}
	for(int t=1;t<=m;t++){
		int type;
		cin>>type;
		//cout<<type<<' ';
		if(type==1) {
			int pos,val;
			cin>>pos>>val;
			h[pos]=val;
		}
		if(type==2) {
			int line;
			cin>>line;
			int cur;
			if(h[1]>line) cur=false;
			if(h[1]<line) cur=true;
			if(h[1]==line) cur=2;
			int cnt=0;
			for(int i=2;i<=n;i++) {
				if(cur==2) {
					cnt++;
					if(h[i]>line) cur=false;
					if(h[i]<line) cur=true;
					if(h[i]==line) cur=2;
				}
				if(cur==1) {
					if(h[i]>line) {
						cur=false;
						cnt++;
					}
					if(h[i]<line) cur=true;
					if(h[i]==line) {
						cur=2;
						cnt++;
					}
				}
				if(cur==0) {
					if(h[i]>line) cur=false;
					if(h[i]<line) {
						cur=true;
						cnt++;
					}
					if(h[i]==line) {
						cur=2;
						cnt++;
					}
				}
			}
			cout<<cnt<<"\n";
		}
	}
}   
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...