Submission #980099

#TimeUsernameProblemLanguageResultExecution timeMemory
980099vjudge1Closing Time (IOI23_closing)C++17
8 / 100
80 ms23892 KiB
#include "closing.h"
using namespace std;
#include <bits/stdc++.h>
#define pb push_back

using lli=long long;
#define deb(x) cout<<#x<<": "<<x<<endl;
int  max_score(int N, int X, int Y, long long K,
              vector<int> U, vector<int> V, vector<int> W)
{
    vector<vector<pair<lli,lli>>> adj (N);
    for(lli i=0; i<N-1; ++i){
        adj[U[i]].pb({W[i], V[i]});
        adj[V[i]].pb({W[i], U[i]});
    }
    priority_queue<pair<lli,lli>, vector<pair<lli,lli>>, greater<pair<lli,lli>>> pq;
    pq.push({0, X});
    pq.push({0,Y});
    vector<bool> visited (N, false);
    int ans=0;
    while(!pq.empty()){
        lli a=pq.top().first;
        lli b=pq.top().second;
        pq.pop();
        if(visited[b]) continue;
        if(K<a) break;
        visited[b]=true;
        ans++;
        K-=a;
        for(lli i=0; i<adj[b].size(); ++i){
            if(!visited[adj[b][i].second]){
            pq.push({adj[b][i].first+a, adj[b][i].second});
            }
        }
    }
    return ans;

}

Compilation message (stderr)

closing.cpp: In function 'int max_score(int, int, int, long long int, std::vector<int>, std::vector<int>, std::vector<int>)':
closing.cpp:30:23: warning: comparison of integer expressions of different signedness: 'lli' {aka 'long long int'} and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   30 |         for(lli i=0; i<adj[b].size(); ++i){
      |                      ~^~~~~~~~~~~~~~
#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...
#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...