2654 | 2023. 01. 18 12:06:18 | kicsiboglar | Találkozás | cpp11 | Hibás válasz 43/55 | 279ms | 13420 KiB |
#include <iostream>
//#include <fstream>
#include <vector>
#include <deque>
#include <algorithm>
#include <climits>
#include <map>
#define ll long long
using namespace std;
//ifstream cin ("input.in");
//ofstream cout ("output.out");
ll n,m,i,j,a,b,len,start,nr,pos,mini=LLONG_MAX,curr;
struct adat
{
ll value,nr;
bool st;
};
bool compare (const adat& a, const adat &b)
{
if (a.value<b.value) return true;
if (a.value==b.value) return a.st;
return false;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
cin>>n;
vector <adat> x(2*n+1);
for (i=1;i<=n;++i)
{
cin>>a>>b;
x[2*i-1].value=a;
x[2*i-1].nr=i;
x[2*i-1].st=true;
x[2*i].value=b;
x[2*i].nr=i;
x[2*i].st=false;
}
sort (x.begin()+1, x.end(),compare);
start=1;
a=1;
curr=2;
while (a<n/2&&curr<=2*n)
{
if (x[curr].st) a++;
curr++;
}
pos=1;
mini=x[curr-1].value-x[start].value;
while (curr<=2*n)
{
if (x[curr].st) a++;
while (start<=curr&&a>n/2)
{
if (!x[start].st) a--;
start++;
}
while (a==n/2)
{
if (!x[start].st) break;
start++;
}
if (a>=n/2&&x[curr].value-x[start].value+1<mini)
{
mini=x[curr].value-x[start].value+1;
pos=x[start].value;
}
curr++;
}
cout<<mini<<"\n"<<pos<<" "<<pos+mini-1;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 43/55 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1832 KiB | |||
2 | Elfogadva | 0/0 | 54ms | 11312 KiB | |||
3 | Hibás válasz | 0/2 | 2ms | 2228 KiB | |||
4 | Hibás válasz | 0/2 | 2ms | 2344 KiB | |||
5 | Hibás válasz | 0/2 | 2ms | 2500 KiB | |||
6 | Elfogadva | 2/2 | 2ms | 2512 KiB | |||
7 | Elfogadva | 2/2 | 2ms | 2744 KiB | |||
8 | Elfogadva | 3/3 | 2ms | 2836 KiB | |||
9 | Elfogadva | 3/3 | 2ms | 3052 KiB | |||
10 | Elfogadva | 3/3 | 2ms | 3260 KiB | |||
11 | Elfogadva | 3/3 | 4ms | 3740 KiB | |||
12 | Elfogadva | 3/3 | 6ms | 4360 KiB | |||
13 | Elfogadva | 3/3 | 6ms | 4316 KiB | |||
14 | Elfogadva | 3/3 | 9ms | 5244 KiB | |||
15 | Elfogadva | 3/3 | 9ms | 5552 KiB | |||
16 | Elfogadva | 3/3 | 9ms | 5280 KiB | |||
17 | Elfogadva | 3/3 | 9ms | 5416 KiB | |||
18 | Elfogadva | 3/3 | 16ms | 6800 KiB | |||
19 | Hibás válasz | 0/3 | 43ms | 13296 KiB | |||
20 | Időlimit túllépés | 0/3 | 279ms | 7984 KiB | |||
21 | Elfogadva | 3/3 | 56ms | 13292 KiB | |||
22 | Elfogadva | 3/3 | 56ms | 13420 KiB |