Submission #470909

#TimeUsernameProblemLanguageResultExecution timeMemory
470909mariowongAutomobil (COCI17_automobil)C++14
100 / 100
22 ms16020 KiB
#include <bits/stdc++.h>
const long long xmod=1e9+7;
using namespace std;
 
int n,m,q,id;
long long r[1000005],c[1000005],num,sum,ans,mult;
char op;
int main(){
	ios::sync_with_stdio(false);
	cin >> n >> m >> q;
	for (int i=1;i<=n;i++){
		r[i]=1;
	}
	for (int i=1;i<=m;i++){
		c[i]=1;
	}
	for (int i=1;i<=q;i++){
		cin >> op >> id >> num;
		if (op == 'R') r[id]*=num,r[id]%=xmod;
		if (op == 'S') c[id]*=num,c[id]%=xmod;
	}
	for (long long i=1;i<=m;i++){
		sum+=i*c[i]; sum%=xmod;
		mult+=c[i]; mult%=xmod;
	}
	ans=sum*r[1]; ans%=xmod;
	for (int i=2;i<=n;i++){
		sum+=m*mult; sum%=xmod;
		ans+=sum*r[i]; ans%=xmod;
	}
	cout << ans << "\n";
	return 0;
}	
#Verdict Execution timeMemoryGrader output
Fetching results...