Submission #79733

# Submission time Handle Problem Language Result Execution time Memory
79733 2018-10-15T17:14:24 Z KLPP Relativnost (COCI15_relativnost) C++14
56 / 140
1204 ms 33792 KB
#include<iostream>
#include<algorithm>
#include<vector>

using namespace std;
typedef long long int lld;
#define MOD 10007
int n,c;
lld Segtree[1000000][21];
lld A[100010];
lld B[100010];
void build(int a, int b, int node){
	if(a==b){
		for(int i=0;i<=c;i++){
			Segtree[node][i]=0;
		}
		Segtree[node][0]=B[a]%MOD;
		Segtree[node][1]=A[a]%MOD;
		return;
	}
	int mid=(a+b)/2;
	build(a,mid,2*node);
	build(mid+1,b,2*node+1);
	for(int i=0;i<=c;i++){
		Segtree[node][i]=0;
	}
	for(int i=0;i<=c;i++){
		for(int j=0;j<=c;j++){
			Segtree[node][min(i+j,c)]+=Segtree[2*node][i]*Segtree[2*node+1][j];
			Segtree[node][min(i+j,c)]%=MOD;
		}
	}
}
void update(int a,int b, int node, int x){
	//cout<<a<<" "<<b<<endl;
	if(x<a || b<x)return;
	if(a==b){
		for(int i=0;i<=c;i++){
			Segtree[node][i]=0;
		}
		Segtree[node][0]=B[a]%MOD;
		Segtree[node][1]=A[a]%MOD;
		return;
	}
	int mid=(a+b)/2;
	update(a,mid,2*node,x);
	update(mid+1,b,2*node+1,x);
	for(int i=0;i<=c;i++){
		Segtree[node][i]=0;
	}
	for(int i=0;i<=c;i++){
		for(int j=0;j<=c;j++){
			Segtree[node][min(i+j,c)]+=Segtree[2*node][i]*Segtree[2*node+1][j];
			Segtree[node][min(i+j,c)]%=MOD;
		}
	}
}

int main(){
	cin>>n>>c;
	for(int i=0;i<n;i++)cin>>A[i];
	for(int i=0;i<n;i++)cin>>B[i];
	build(0,n-1,1);
	int q;
	cin>>q;
	while(q--){
		int x;
		cin>>x;
		x--;
		lld y,z;
		cin>>y>>z;
		A[x]=y;
		B[x]=z;
		update(0,n-1,1,x);
		cout<<Segtree[1][c]<<endl;
	}
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 13 ms 760 KB Output is correct
2 Correct 19 ms 764 KB Output is correct
3 Correct 30 ms 764 KB Output is correct
4 Correct 678 ms 24588 KB Output is correct
5 Runtime error 179 ms 33792 KB Execution killed with signal 9 (could be triggered by violating memory limits)
6 Runtime error 232 ms 33792 KB Execution killed with signal 9 (could be triggered by violating memory limits)
7 Runtime error 1204 ms 33792 KB Memory limit exceeded: We have a known bug that the memory usage is measured incorrectly (possibly because of Meltdown/Spectre patch), so your solution may be correct. Please submit again. Sorry for the inconvenience.
8 Runtime error 159 ms 33792 KB Execution killed with signal 9 (could be triggered by violating memory limits)
9 Runtime error 127 ms 33792 KB Execution killed with signal 9 (could be triggered by violating memory limits)
10 Runtime error 227 ms 33792 KB Execution killed with signal 9 (could be triggered by violating memory limits)