11798 | 2024-11-11 12:48:28 | Leventusz09 | Forma-1 | cpp17 | Hibás válasz 0/100 | 2.091s | 836 KiB |
#include <bits/stdc++.h>
using namespace std;
int partition(vector<pair<int, long long>> &vec, int low, int high) {
// Selecting last element as the pivot
pair<int, long long> pivot = vec[high];
// Index of elemment just before the last element
// It is used for swapping
int i = (low - 1);
for (int j = low; j <= high - 1; j++) {
// If current element is smaller than or
// equal to pivot
if (vec[j].second <= pivot.second) {
i++;
swap(vec[i], vec[j]);
}
}
// Put pivot to its position
swap(vec[i + 1], vec[high]);
// Return the point of partition
return (i + 1);
}
void quickSort(vector<pair<int, long long>> &vec, int low, int high) {
// Base case: This part will be executed till the starting
// index low is lesser than the ending index high
if (low < high) {
// pi is Partitioning Index, arr[p] is now at
// right place
int pi = partition(vec, low, high);
// Separately sort elements before and after the
// Partition Index pi
quickSort(vec, low, pi - 1);
quickSort(vec, pi + 1, high);
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int N;
cin >> N;
vector<long long> a(N), b(N), c(N);
for(int i=0; i<N; i++){
cin >> a[i] >> b[i] >> c[i];
}
int Q;
cin >> Q;
for(int i=0, j; i<Q; i++){
int Pi;
long long Ti;
cin >> Pi >> Ti;
vector<pair<int, long long>> dist(N);
for(j=0; j<N; j++){
dist[j].first = j;
dist[j].second = a[j] * Ti * Ti + b[j] * Ti + c[j];
}
quickSort(dist, 0, dist.size()-1);
/*sort(dist.begin(), dist.end(), [](pair<int, long long> a, pair<int, long long> b){
return a.second > b.second;
});*/
cout << dist[Pi-1].first+1 << "\n";
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Hibás válasz | 1ms | 320 KiB | ||||
subtask2 | 0/20 | ||||||
2 | Hibás válasz | 76ms | 740 KiB | ||||
3 | Hibás válasz | 81ms | 756 KiB | ||||
4 | Hibás válasz | 76ms | 824 KiB | ||||
5 | Hibás válasz | 81ms | 760 KiB | ||||
6 | Hibás válasz | 85ms | 836 KiB | ||||
7 | Hibás válasz | 79ms | 824 KiB | ||||
8 | Hibás válasz | 79ms | 744 KiB | ||||
9 | Hibás válasz | 79ms | 752 KiB | ||||
subtask3 | 0/30 | ||||||
10 | Időlimit túllépés | 2.091s | 556 KiB | ||||
11 | Hibás válasz | 1.521s | 504 KiB | ||||
12 | Időlimit túllépés | 2.091s | 572 KiB | ||||
13 | Időlimit túllépés | 2.091s | 508 KiB | ||||
14 | Időlimit túllépés | 2.073s | 320 KiB | ||||
15 | Időlimit túllépés | 2.075s | 508 KiB | ||||
16 | Időlimit túllépés | 2.075s | 320 KiB | ||||
17 | Időlimit túllépés | 2.073s | 568 KiB | ||||
18 | Időlimit túllépés | 2.085s | 556 KiB | ||||
subtask4 | 0/50 | ||||||
19 | Időlimit túllépés | 2.084s | 320 KiB | ||||
20 | Időlimit túllépés | 2.084s | 508 KiB | ||||
21 | Időlimit túllépés | 2.084s | 504 KiB | ||||
22 | Időlimit túllépés | 2.084s | 536 KiB | ||||
23 | Időlimit túllépés | 2.084s | 560 KiB | ||||
24 | Időlimit túllépés | 2.084s | 320 KiB | ||||
25 | Időlimit túllépés | 2.082s | 568 KiB | ||||
26 | Időlimit túllépés | 2.084s | 568 KiB | ||||
27 | Időlimit túllépés | 2.081s | 504 KiB | ||||
28 | Időlimit túllépés | 2.078s | 692 KiB | ||||
29 | Időlimit túllépés | 2.082s | 548 KiB | ||||
30 | Időlimit túllépés | 2.079s | 320 KiB |