Submission #853149

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
8531492023-09-23 13:32:36aymanrsJakarta Skyscrapers (APIO15_skyscraper)C++14
100 / 100
977 ms99920 KiB
#include<bits/stdc++.h>
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx,avx2,bmi,bmi2,popcnt,lzcnt")
using namespace std;
void solve(){
short n, m;
cin >> n >> m;
short b[m], p;
vector<short> h[n], sm[n];
const short s = 800;
for(int i = 0;i < m;i++){
cin >> b[i] >> p;
if(p>=s) h[b[i]].push_back(p);
else sm[b[i]].push_back(p);
}
int d[n][s];
bitset<s> v[n];
for(int i = 0;i < n;i++) for(int j = 0;j < s;j++) d[i][j] = INT_MAX, v[i][j] = false;
d[b[0]][0] = 0;
priority_queue<pair<int, pair<short, short>>,vector<pair<int, pair<short, short>>>, greater<pair<int, pair<short, short>>>> q;
q.push({0, {b[0], 0}});
while(!q.empty()){
short wi = q.top().second.first;
short po = q.top().second.second;
if(v[wi][po]) {
q.pop();
continue;
}
if(wi == b[1]){
cout << d[wi][po] << '\n';
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...