- 발행일
[99클럽] 99클럽 코테 스터디 10일차 TIL + 해시
[99클럽] 99클럽 코테 스터디 10일차 TIL + 해시
이 글은 네이버 블로그에 2025년 1월 24일에 올렸던 것을 그대로 옮겨온 것입니다.
오늘의 학습 키워드
공부한 내용 본인의 언어로 정리하기
오늘의 회고
어떤 문제가 있었고, 나는 어떤 시도를 했는지
어떻게 해결했는지
무엇을 새롭게 알았는지
내일 학습할 것은 무엇인지
비기너 회상 https://www.acmicpc.net/problem/32953
미들러 빙산 https://www.acmicpc.net/problem/2573
챌린저 한 번 남았다 https://www.acmicpc.net/problem/13317
https://www.acmicpc.net/problem/32953
// 모듈 import (필요시 파일 입출력에 사용)
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
let input = [];
rl.on("line", (line) => {
input.push(line);
}).on("close", () => {
const [N, M] = input[0].split(" ").map(Number); // 첫 줄 입력: N(수업 수), M(최소 수업 수)
const studentCount = new Map(); // 학생별 수업 참여 횟수를 저장할 Map
let index = 1; // 현재 입력 라인 인덱스
for (let i = 0; i < N; i++) {
const Ki = Number(input[index]); // i번째 수업의 학생 수
const students = input[index + 1].split(" "); // i번째 수업의 학생 목록
// 학생 학번별 수업 참여 횟수 업데이트
students.forEach((student) => {
studentCount.set(student, (studentCount.get(student) || 0) + 1);
});
index += 2; // 다음 수업으로 이동
}
// M개 이상의 수업을 들은 학생 수 계산
const result = Array.from(studentCount.values()).filter((count) => count >= M).length;
console.log(result); // 결과 출력
});
필수 해시태그: #99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL
