Pagini recente » Cod sursa (job #1339495) | Cod sursa (job #336820) | Cod sursa (job #2240642) | Cod sursa (job #1264048) | Cod sursa (job #289109)
Cod sursa(job #289109)
#include<fstream>
using namespace std;
int v[65][100001],i,j,op,a,b,sol,n,m,poz[100001],maxim,x;
int main()
{
ifstream f("marbles.in");
ofstream g("marbles.out");
f>>n>>m;
for(i=1;i<=n;i++)
{f>>a>>b; poz[a]=b;
for(j=a;j<=100010;j++)
v[b][j]++;
if(b>maxim) maxim=b;
}
for(i=1;i<=m;i++)
{ f>>op>>a>>b;
if(op==1)
{ sol=0;
for(j=1;j<=maxim;j++)
{ x=v[j][b]-v[j][a];
if(v[j][a]!=v[j][a-1]) x++;
if(x>sol) sol=x;
}
g<<sol<<'\n';
}
else { b=a+b;
x=poz[a]; poz[a]=0; poz[b]=x;
if(a<b) for(j=a;j>0;j--) v[x][j]--;
else for(j=a-1;j>=b;j--) v[x][j]++;
}
}
f.close();
g.close();
return 0;
}