Deff_Dev
[백준] 1058번 친구 (C++) 본문
문제
https://www.acmicpc.net/problem/1058
풀이
직접적인 친구를 먼저 찾고 해당 친구의 겹지인을 탐색하는 방법으로 풀이했다.
#include<iostream>
// https://www.acmicpc.net/problem/1058
using namespace std;
bool isFriend[51][51] = { false, };
bool isCheck[51][51] = { false, };
int main() {
int n;
cin >> n;
char input;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
cin >> input;
if (input == 'Y') {
isFriend[i][j] = true;
}
}
}
int maxCount = -1;
for (int i = 1; i <= n; i++) {
int count = 0;
for (int j = 1; j <= n; j++) {
if (!isCheck[i][j] && isFriend[i][j] && isFriend[j][i]) // 지인 체크
{
isCheck[i][j] = true;
count++;
for (int k = 1; k <= n; k++) { // 겹지인 구하기
if (i != k && !isCheck[i][k] && !isFriend[i][k] && isFriend[j][k] && isFriend[k][j]) {
isCheck[i][k] = true;
count++;
}
}
}
}
if (maxCount < count)
maxCount = count;
}
cout << maxCount;
return 0;
}
'코딩테스트 > 백준' 카테고리의 다른 글
[백준] 나무꾼 이다솜 (C++) (1) | 2024.09.05 |
---|---|
[백준] 1461번 도서관 (C++) (2) | 2024.09.02 |
[백준] 11724번 연결 요소의 개수 (C++) (0) | 2024.08.31 |
[백준] 1916번 최소비용 구하기 (C++) (0) | 2024.08.30 |
[백준] 15954번 N과 M (5) (C++) (0) | 2024.08.30 |