# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
409885 | fadi57 | 자매 도시 (APIO20_swap) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "swap.h"
#include "grader.cpp"
#include<bits/stdc++.h>
using namespace std;
const int mx=2e5+10;
typedef long long ll;
int inf=1e9+10;
const int mod=1e9+7;
vector<pair<int,int>>adj[mx];
int ans=-1;
int n,m;
int block[mx];
int arr[mx];
int ok;
vector<pair<int,pair<int,int>>>edges;
void init(int N, int M,std::vector<int> U, std::vector<int> V, std::vector<int> W) {
n=N;m=M;
for(int i=0;i<M;i++){
if(U[i]){ok=1;}
arr[V[i]]=W[i];
edges.push_back({W[i],{U[i],V[i]}});
adj[U[i]].push_back({V[i],W[i]});
adj[V[i]].push_back({U[i],W[i]});
}
for(auto it:W){
ans=max(ans,it);
}
for(int i=0;i<N;i++){
if(adj[i].size()!=2){
ans=-1;