Cod sursa(job #3277066)

Utilizator leelcheeseCiovnicu Denis leelcheese Data 15 februarie 2025 11:56:50
Problema Marbles Scor 0
Compilator cpp-64 Status done
Runda vs11_12_vine_oji_2025 Marime 0.9 kb
#include <bits/stdc++.h>
#include <unordered_map>
#define nmax 100006
#define MOD 666013
#define INF 2012345678
#define ll long long
#define ull unsigned long long
using namespace std;
//#define fin cin
//#define fout cout

ifstream fin("marbles.in");
ofstream fout("marbles.out");

int n, m;
int fr[66];
int v[nmax];

void Reset()
{
	for (int i = 0; i <= 64; i++)
		fr[i] = 0;
}

int main()
{
	int i, j, t, x, y, p, c;
	fin >> n >> m;
	for (i = 1; i <= n; i++)
	{
		fin >> p >> c;
		v[p] = c;
	}

	for (i = 1; i <= m; i++)
	{
		fin >> t >> x >> y;
		if (t == 0 && x + y > 0 && x + y <= n)
		{
			c = v[x];
			v[x] = 0;
			v[x + y] = c;
		}
		else if (t == 1)
		{
			Reset();
			for (j = x; j <= y; j++)
				if(v[j] != 0)
					fr[v[j]]++;

			c = -INF; // fol ca maxim
			for (j = 1; j <= 64; j++)
				c = max(c, fr[j]);

			fout << c << "\n";
		}
	}
	return 0;
}