답안 #846381

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
846381 2023-09-07T14:12:27 Z vjudge1 KOVANICE (COI15_kovanice) C++17
0 / 100
201 ms 47628 KB
#include <bits/stdc++.h>
#define endl "\n"
#define pb push_back
#define int long long
using namespace std;

const int inf = 2e18 + 5;
const int N = 3e5 + 5;
const int mod = 1e9 + 7;

vector<int> par(N);

int find(int a){
 if(a == par[a]) return a;
 return par[a] = find(par[a]);
}

void merge(int a, int b){
  a = find(a), b = find(b);
  par[a] = b;
}


int32_t main(){
  //freopen("in.txt","r", stdin);
  int n, m, v;
  cin>>n>>m>>v;
  for(int i = 1; i <= m+5; i++) par[i] = i;

  vector<array<int, 2> > type;
  for(int i = 0; i < v; i++){
     string s;
     cin>>s;

     if(s[1] == '='){
        merge(s[0] - '0', s[2] - '0');
     }
     else{
        type.pb({s[0] - '0', s[2] - '0'});
     }
  }

  map<int, int> mp[2];
  for(int i = 0; i < type.size(); i++){
    int x = find(type[i][0]), y = find(type[i][1]);
    mp[0][x] = 1;
    mp[1][y] = 1;
  }

  for(int i = 1; i <= m; i++){
    int x = find(i);
    if(mp[0][x]) cout<<"K1"<<endl;
    else if(mp[1][x])cout<<"K2"<<endl;
    else cout<<"?"<<endl;
  }
  return 0;
}

Compilation message

kovanice.cpp: In function 'int32_t main()':
kovanice.cpp:44:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::array<long long int, 2> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   44 |   for(int i = 0; i < type.size(); i++){
      |                  ~~^~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 2908 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 110 ms 29644 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 22 ms 4812 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 201 ms 47628 KB Output isn't correct
2 Halted 0 ms 0 KB -