728x90
반응형
27939번: 가지 교배
문제
https://www.acmicpc.net/problem/27939
27939번: 가지 교배
키위별의 유전학에 따르면 가지의 교배는 두 가지 서로 다른 방식이 가능하다. 교배란 서로 다른 두 품종으로부터 이전에 존재한 적 없는 하나의 품종을 만들어내는 것이다. P-우선 교배: 흰색과
www.acmicpc.net
풀이
조수들은 P-우선 교배를 하기 때문에 보라색인 가지가 1개라도 섞여있다면 보라색 가지가 배출되고, 키위는 W-우선 교배를 하기 때문에 흰색인 가지가 하나라도 있다면 흰색 가지가 배출된다.
따라서 각 번호의 가지가 P인지 W인지 저장하는 배열을 만들어두고 각 조수가 가진 품종 중에 P가 몇 개인지 센다. P-우선 교배에 따라 P가 0인 경우 W를 1 증가시키고 모든 조수의 가지 교배가 끝나고 나면 배출되는 흰색 가지의 양을 알 수 있다. 흰색 가지가 하나라도 있다면 W-우선 교배에 따라 흰색 가지가 배출되므로 W를, 흰색 가지가 하나도 없다면 P를 출력한다.
코드
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int n, w = 0;
cin >> n;
vector<char> v(n);
for (int i = 0; i < n; i++)
cin >> v[i];
int m, k;
cin >> m >> k;
for (int i = 0; i < m; i++) {
int p = 0;
for (int j = 0; j < k; j++) {
int x;
cin >> x;
if (v[x - 1] == 'P')
p++;
}
if (p == 0)
w++;
}
if (w != 0)
cout << 'W';
else
cout << 'P';
return 0;
}
728x90
반응형
'Problem Solving > BOJ' 카테고리의 다른 글
[백준 / BOJ] C++ 27866 문자와 문자열 (2) | 2023.04.11 |
---|---|
[백준 / BOJ] C++ 6497 전력난 (6) | 2023.04.11 |
[백준 / BOJ] C++ 27880 Gahui and Soongsil University station (4) | 2023.04.09 |
[백준 / BOJ] C++ 3780 네트워크 연결 (2) | 2023.04.08 |
[백준 / BOJ] C++ 4343 Arctic Network (2) | 2023.04.07 |