Pagini recente » Cod sursa (job #2972233) | Cod sursa (job #1409177) | Cod sursa (job #1981950) | Cod sursa (job #1779124) | Cod sursa (job #67929)
Cod sursa(job #67929)
#include <stdio.h>
#define MAXM 1000005
int M, N;
int max1[MAXM], max2[MAXM];
int main()
{
freopen("orase.in", "rt", stdin);
freopen("orase.out", "wt", stdout);
scanf("%d %d", &M, &N);
for (int i = 0; i <= M; i++)
max1[i] = max2[i] = -0x3f3f3f3f;
for (int i = 0; i < N; i++)
{
int D, L;
scanf("%d %d", &D, &L);
if (L > max1[D])
max2[D] = max1[D],
max1[D] = L;
else
if (L > max2[D])
max2[D] = L;
}
int MAX = -0x3f3f3f3f, MAXcur = -0x3f3f3f3f;
for (int i = 0; i <= M; i++)
{
if (max1[i] + max2[i] > MAX)
MAX = max1[i] + max2[i];
MAXcur++;
if (MAXcur + max1[i] > MAX)
MAX = MAXcur + max1[i];
if (max1[i] > MAXcur)
MAXcur = max1[i];
}
printf("%d\n", MAX);
return 0;
}