Submission #890438

# Submission time Handle Problem Language Result Execution time Memory
890438 2023-12-21T09:01:48 Z alex_2008 Simple game (IZhO17_game) C++14
49 / 100
185 ms 7096 KB
#include <bits/stdc++.h>
using namespace std;
 
const int N=1e5+5, M=1e6+10;
int a[N], b[M];
int n,m;
 
void precalc(){
	for(int i=0; i<n-1; i++){
		b[min(a[i], a[i+1])]++;
      	b[max(a[i], a[i+1])+1]--;		
	}
  	for(int i=1;i<M;i++){
      b[i]+=b[i-1];
	}
}
 
int main() {
	cin>>n>>m;
	int mx=-1;
	for(int i=0; i<n; i++){cin>>a[i]; mx=max(mx, a[i]);}
	if(n <= 1000 && m<=1000){
		for(int i=0; i<m; i++){
			int q;
			cin>>q;
			if(q==2){
				long long anss=0;
				int h;
				cin>>h;
				for(int i=0; i<n-1; i++){
					if(a[i] >= h && a[i+1] <= h)anss++;
					else if(a[i] <= h && a[i+1] >= h)anss++;
				}
				cout<<anss<<endl;
			}else{
				int c,d;
				cin>>c>>d;
				a[c-1] = d;
			}
		}
		return 0;
	}
	precalc();
//	for(int i=1; i<=mx; i++)cout<<b[i]<<" ";
//	cout<<endl;
	for(int i=0; i<m; i++){
		int q;
		cin>>q;
		if(q==2){
			int h;
			cin>>h;
			cout<<b[h]<<"\n";
		}else{
			int a,b;
			cin>>a>>b;
		}
	}
	
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 2396 KB Output is correct
2 Correct 3 ms 2396 KB Output is correct
3 Correct 3 ms 2396 KB Output is correct
4 Correct 4 ms 2392 KB Output is correct
5 Correct 3 ms 2396 KB Output is correct
6 Correct 3 ms 2392 KB Output is correct
7 Correct 3 ms 2396 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 2396 KB Output is correct
2 Correct 3 ms 2396 KB Output is correct
3 Correct 3 ms 2396 KB Output is correct
4 Correct 4 ms 2392 KB Output is correct
5 Correct 3 ms 2396 KB Output is correct
6 Correct 3 ms 2392 KB Output is correct
7 Correct 3 ms 2396 KB Output is correct
8 Correct 159 ms 4784 KB Output is correct
9 Correct 176 ms 5972 KB Output is correct
10 Correct 185 ms 7096 KB Output is correct
11 Correct 152 ms 5516 KB Output is correct
12 Correct 170 ms 6484 KB Output is correct
13 Correct 170 ms 7000 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 2396 KB Output is correct
2 Correct 3 ms 2396 KB Output is correct
3 Correct 3 ms 2396 KB Output is correct
4 Correct 4 ms 2392 KB Output is correct
5 Correct 3 ms 2396 KB Output is correct
6 Correct 3 ms 2392 KB Output is correct
7 Correct 3 ms 2396 KB Output is correct
8 Correct 159 ms 4784 KB Output is correct
9 Correct 176 ms 5972 KB Output is correct
10 Correct 185 ms 7096 KB Output is correct
11 Correct 152 ms 5516 KB Output is correct
12 Correct 170 ms 6484 KB Output is correct
13 Correct 170 ms 7000 KB Output is correct
14 Incorrect 130 ms 6820 KB Output isn't correct
15 Halted 0 ms 0 KB -