Submission #1149252

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
11492522025-02-12 02:05:45dashkaBrought Down the Grading Server? (CEOI23_balance)C++20
100 / 100
912 ms172352 KiB
#include<bits/stdc++.h>
using namespace std;
struct edge {
int to;
int back_idx;
int who;
};
vector<vector<edge>> g;
vector<int> act;
unordered_set<int> ids;
void add_euler(int a, int b, int who) {
g[a].push_back({b, g[b].size(), who});
g[b].push_back({a, g[a].size() - 1, who});
ids.insert(a);
ids.insert(b);
}
void visit(int v) {
while(not g[v].empty()) {
auto e = g[v].back(); g[v].pop_back();
if(e.back_idx == -1) continue;
g[e.to][e.back_idx].back_idx = -1;
visit(e.to);
if(e.who >= 0) act[e.who] = v;
}
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

balance.cpp: In function 'void add_euler(int, int, int)':
balance.cpp:16:33: warning: narrowing conversion of '(& g.std::vector<std::vector<edge> >::operator[](((std::vector<std::vector<edge> >::size_type)b)))->std::vector<edge>::size()' from 'std::vector<edge>::size_type' {aka 'long unsigned int'} to 'int' [-Wnarrowing]
   16 |     g[a].push_back({b, g[b].size(), who});
      |                        ~~~~~~~~~^~
balance.cpp:17:36: warning: narrowing conversion of '((& g.std::vector<std::vector<edge> >::operator[](((std::vector<std::vector<edge> >::size_type)a)))->std::vector<edge>::size() - 1)' from 'std::vector<edge>::size_type' {aka 'long unsigned int'} to 'int' [-Wnarrowing]
   17 |     g[b].push_back({a, g[a].size() - 1, who});
      |                        ~~~~~~~~~~~~^~~
balance.cpp: In function 'int main()':
balance.cpp:88:23: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   88 |     int N, T, K; scanf("%d %d %d", &N, &T, &K);
      |                  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
balance.cpp:94:25: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   94 |             int a; scanf("%d", &a);
      |                    ~~~~~^~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...