2001 | 2022-12-13 20:20:15 | KovácsHunor | Forma-1 | cpp11 | Hibás válasz 0/100 | 2.099s | 3928 KiB |
#include "stdio.h"
#include "stdlib.h"
void QuickSort(unsigned long long* arr, int size){
int pivot = 0;
for (int i = 1; i < size; i++)
{
if(arr[pivot] < arr[i]){
arr[pivot] ^= arr[pivot+1];
arr[pivot+1] ^= arr[pivot];
arr[pivot] ^= arr[pivot+1];
pivot++;
if(i != pivot){
arr[pivot-1] ^= arr[i];
arr[i] ^= arr[pivot-1];
arr[pivot-1] ^= arr[i];
}
}
}
if(pivot > 1) QuickSort(arr, pivot);
if(pivot < size-2) QuickSort(arr + (pivot+1), size - (pivot+1) );
}
unsigned long long distance(unsigned long long a, unsigned long long b, unsigned long long c, unsigned long long t){
return t*t*a + t*b + c;
}
int main()
{
int n, q;
scanf("%d", &n);
int* arr = (int*)malloc(sizeof(int)*n*3);
for (int i = 0; i < n; i++)
{
scanf("%d%d%d", arr + i, arr + i + n, arr + i + 2*n);
}
scanf("%d", &q);
int* sol = (int*)malloc(sizeof(int)*q);
unsigned long long* dis = (unsigned long long*)malloc(sizeof(unsigned long long)*n);
for (int i = 0; i < q; i++)
{
int p, t;
scanf("%d%d", &p, &t);
for (int j = 0; j < n; j++)
{
dis[j] = distance(arr[j], arr[j+n], arr[j+2*n], t)*10000 + n-j;
}
QuickSort(dis, n);
sol[i] = n - dis[p-1]%10000 + 1;
}
for (int i = 0; i < q; i++)
{
printf("%d\n", sol[i]);
}
free(arr);
free(sol);
free(dis);
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1428 KiB | ||||
subtask2 | 0/20 | ||||||
2 | Elfogadva | 75ms | 2908 KiB | ||||
3 | Elfogadva | 75ms | 3112 KiB | ||||
4 | Elfogadva | 75ms | 3320 KiB | ||||
5 | Elfogadva | 72ms | 3352 KiB | ||||
6 | Elfogadva | 75ms | 3484 KiB | ||||
7 | Elfogadva | 72ms | 3588 KiB | ||||
8 | Hibás válasz | 78ms | 3668 KiB | ||||
9 | Hibás válasz | 86ms | 3764 KiB | ||||
subtask3 | 0/30 | ||||||
10 | Elfogadva | 1.707s | 2804 KiB | ||||
11 | Elfogadva | 1.819s | 2848 KiB | ||||
12 | Időlimit túllépés | 2.059s | 3024 KiB | ||||
13 | Időlimit túllépés | 2.075s | 3208 KiB | ||||
14 | Időlimit túllépés | 2.079s | 2820 KiB | ||||
15 | Időlimit túllépés | 2.043s | 3064 KiB | ||||
16 | Időlimit túllépés | 2.075s | 3404 KiB | ||||
17 | Időlimit túllépés | 2.048s | 3676 KiB | ||||
18 | Időlimit túllépés | 2.086s | 3760 KiB | ||||
subtask4 | 0/50 | ||||||
19 | Időlimit túllépés | 2.072s | 3392 KiB | ||||
20 | Időlimit túllépés | 2.063s | 3108 KiB | ||||
21 | Időlimit túllépés | 2.049s | 3364 KiB | ||||
22 | Időlimit túllépés | 2.072s | 3480 KiB | ||||
23 | Időlimit túllépés | 2.016s | 3564 KiB | ||||
24 | Időlimit túllépés | 2.099s | 3804 KiB | ||||
25 | Időlimit túllépés | 2.052s | 3388 KiB | ||||
26 | Időlimit túllépés | 2.081s | 3780 KiB | ||||
27 | Időlimit túllépés | 2.065s | 3656 KiB | ||||
28 | Időlimit túllépés | 2.079s | 3692 KiB | ||||
29 | Időlimit túllépés | 2.076s | 3744 KiB | ||||
30 | Időlimit túllépés | 2.081s | 3928 KiB |