Loading...
본문 바로가기
👥
총 방문자
📖
0개 이상
총 포스팅
🧑
오늘 방문자 수
📅
0일째
블로그 운영

여러분의 방문을 환영해요! 🎉

다양한 개발 지식을 쉽고 재미있게 알려드리는 블로그가 될게요. 함께 성장해요! 😊

백준 문제풀이/Nodejs

[백준][브루트포스] 1058 친구 NodeJs 구현

by 꽁이꽁설꽁돌 2025. 1. 28.
728x90
반응형

 

     

목차

     

    문제

    https://www.acmicpc.net/problem/1058

     

    문제 구현 방향

    문제 이해를 제대로 하지 않아 처음에 unionfind로 풀어 틀렸다... 

    인접 리스트 구현 후 탐색 두번 하면 되는 문제였다.

     

     

    코드 구현

    const input = require("fs")
      .readFileSync("./dev/stdin", "utf-8")
      .trim()
      .split("\n");
    
    let N = +input[0];
    let idx = 1;
    let board = Array.from({ length: N + 1 }, () => []);
    
    while (idx < input.length) {
      let str = input[idx].trim();
      for (let i = 0; i < str.length; i++) {
        if (str[i] === "Y") {
          board[idx].push(i + 1);
        }
      }
      idx++;
    }
    let ans = 0;
    
    for (let i = 1; i <= N; i++) {
      let cnt = 0;
      let visit = Array(N + 1).fill(0);
      visit[i] = 1;
      for (let friend of board[i]) {
        if (!visit[friend]) {
          visit[friend] = 1;
          cnt++;
        }
        for (let ffriend of board[friend]) {
          if(!visit[ffriend]){
            visit[ffriend] = 1;
            cnt++;
          }
       
        }
      }
      ans = Math.max(cnt, ans);
    }
    console.log(ans);
    반응형