Submission #148737

#TimeUsernameProblemLanguageResultExecution timeMemory
148737코딩은 체육과목입니다 (#200)Crosses on the Grid (FXCUP4_cross)C++17
100 / 100
131 ms8860 KiB
#include "cross.h" #include <stdio.h> #include <vector> #include <queue> #include <algorithm> #include <iostream> #include <string> #include <bitset> #include <map> #include <set> #include <tuple> #include <string.h> #include <math.h> #include <random> #include <functional> #include <assert.h> #include <math.h> #define all(x) (x).begin(), (x).end() #define xx first #define yy second using namespace std; using i64 = long long int; using ii = pair<int, int>; using ii64 = pair<i64, i64>; i64 SelectCross(int K, std::vector<int> I, std::vector<int> O) { int n = I.size(); vector<ii64> arr(n); for (int i = 0; i < n; i++) { arr[i].xx = I[i]; arr[i].yy = O[i]; } sort(all(arr)); priority_queue<i64, vector<i64>, greater<i64>> maxw; i64 ans = 0; for (int i = n - 1; i >= 0; i--) { maxw.push(arr[i].yy); if (maxw.size() > K) maxw.pop(); if (maxw.size() == K) ans = max(ans, arr[i].xx * (2 * maxw.top() - arr[i].xx)); } return ans; }

Compilation message (stderr)

cross.cpp: In function 'i64 SelectCross(int, std::vector<int>, std::vector<int>)':
cross.cpp:49:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (maxw.size() > K)
             ~~~~~~~~~~~~^~~
cross.cpp:52:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (maxw.size() == K)
             ~~~~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...