题目
一道模拟水题
代码如下:
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+5;
const int inf=0x3f3f3f3f;
typedef long long ll;
bool visr[maxn],visc[maxn];
ll sum1=0,sum2=0,size1=0,size2=0;
int main()
{
freopen("adjustment.in","r",stdin);
freopen("adjustment.out","w",stdout);
ios::sync_with_stdio(false);
cin.tie(0);
char ch;
ll n,q,id;
cin>>n>>q;
for(ll i=1;i<=q;i++)
{
cin>>ch>>id;
if(ch=='R')
{
if(visr[id])
cout<<0<<endl;
else
{
cout<<(1+n)*n/2+id*(n-size1)-sum1<<endl;
visr[id]=true;
sum2+=id;
size2++;
}
}
else
{
if(visc[id])
cout<<0<<endl;
else
{
cout<<(1+n)*n/2+id*(n-size2)-sum2<<endl;
visc[id]=true;
sum1+=id;
size1++;
}
}
}
}