Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

2025‐08‐22 회의록

김누리 edited this page Aug 22, 2025 · 1 revision

2025年08月22日 스터디 회고

** 참여자 : 강성욱, 김나은, 김누리,이상억
** 불참 :


<백준>

  • 랜선 자르기

<프로그래머스>

  • 숫자 카드 나누기
  • 점 찍기
  • 네트워크
  • 영어 끝말잇기
  • 행렬의 곱셈
  • 단어 변환
  • 전화번호 목록

나은님 > 이상억님 > 김누리 > 강성욱

이상억 님

<백준>

  1. 랜선 자르기 : 2진 탐색이 먼저 안떠올랐음. 제안 사항을 봤을 때 1씩 증가 시키는건 말이 안됨. 지수를 증가하는 방식도 생각해봤지만 놓치는 부분도 많이 있을거 같아 인공지능의 도움을 받아 이진 탐색임을 알게 됨

<프로그래머스>

  1. 숫자 카드 나누기 : 유클리드 호제법을 안쓰고 풀라 했지만, 시간초과 날 확률이높아 인공지능의 도움을 받음. 유클리드 호제법을 채택하지 않으면 타임아웃 날 확률이 높다 해서 유클리드 호제법 채용
  2. 점 찍기 : 평면에서 거리계산 문제. x의 제곱만큼 빼서 제곱근화 하는 방식으로 문제 풀이
  3. 네트워크 : 설명이 복잡하지 않아서 파악은 쉬웠음. 정답 난이도가 낮은 일부 dfs보다도 평이했음
  4. 영어 끝말잇기 : 단어들을 Set에 등록 후 문제에서 요구하는 대로 진행
  5. 행렬의 곱셈 : 행렬의 곱 공식 이용해서 풀이 진행.
  6. 단어 변환 : 네트워크 문제 처럼 문제에서 요구하는게 명확해서 dfs를 채용
  7. 전화번호 목록 : Set에 등록 후 반복문해서 풀이

(注記) 총평 : 저번주랑 난이도는 비슷했던거 같음. 17주차 까지 풀이 하면서 놓쳤던? 부족했던 부분에 대해 복습이 필요해 보임

강성욱 님

<백준>

  1. 랜선 자르기 : 범위 넓고, 확인할게 많아 이진탐색 채용

<프로그래머스>

  1. 숫자 카드 나누기 : 약수 리스트 구하고, 시나리오대로 반복 해서 풀이.
  2. 점 찍기 : sqrt로 제곱근 방식
  3. 네트워크 : dfs, bfs 둘 다 가능하지만, Unionfind 라는 알고리즘을 찾아본 기억이 있어 해당 알고리즘 채용
  4. 영어 끝말잇기 : map 채용. 문제대로 반복문 돌리면서 풀이.
  5. 행렬의 곱셈 : 공식 찾아 본 후 시나리오 화 진행
  6. 단어 변환 : bfs 채용. 목적지를 향해서 한 단어씩 변환해 가며 풀이.
  7. 전화번호 목록 : 오름차순 정렬 후 startsWith() 문법 채용.

(注記) 총평 : 쉬웠음....

(注記) 질문 : LinkedHashMap, HashMap은 k-v 구조의 자료구조, 노드간 연결이 되는 해쉬 맵이다.


김나은 님

<프로그래머스>

  1. 영어 끝말잇기 : for문을 이용해서 풀었는데 일단 통과 되었었음. 그러나 효율성을 생각해 보니 다른 방식이 있을 거 같아 ai나 구글링을 해서 HashSet을 채택해서도 구현해봄
  2. 행렬의 곱셈 : 3중 for문을 쓰면서 일부 계산에서 헷갈리는 부분이 있었음

(注記) 총평 : 아직은 다 풀지 못하지만, 생각보다 gpt 를 채택하면 혼자 풀이 할 수 있는 문제들이 많아진듯. 그러나 혼자 풀기에는 좀 어려움


김누리 님

김누리 :

(注記) 지난주 질문에 대한 답변 :

비트 시프트 시, 오른쪽 시프트 하면 어떻게 작동하나? 우측 비트 시프트 시, n/2 로 계산됨. 예를들어 십진수로 10인 경우 이진수로 표시하면 1010(2) 지만, 우측 비트 시프트를 하게 되면 0101(2) 가되고 이를 십진수로 표현하면 (02^3 + 12^2 + 02^1 + 12^0) 이므로 5가 됨. 반대로 좌측 비트 시프트를 하게 된다면 1010(2) => 10100(2)가 되며 이를 십진수로 표기하면 (12^4 + 02^3+12^2+02^1+0*2^0) 으로 20이 됨

즉 비트를 우측으로 시프트 하면 n/2 계산, 좌측으로 시프트 하면 2*n 계산이 됨을 알 수 있음.

다만 정수 타입에만 이용 가능하며, float, double 형태의 타입에는 이용할 수 없음.

<백준>

  1. 랜선 자르기 : 문제 이해에서 좀 해맴. 랜선길이를 나눌 때, 나눠야 할 랜 선 길이가 주어지지 않았는데.. 어떻게 구하지??? >> AI 상담 해 보니, 이진 탐색 하면서 중앙값을 구한 뒤 중앙값 가지고 랜선 자를 갯수를 풀이하면 된다고 도움 받음

<프로그래머스>

  1. 숫자 카드 나누기 : i = 1 부터 해서 i를 계속 ++ 하며 풀이를 진행하면 될 줄 알았지만, 타임아웃 나올것 같았음. 인공지능 도움 받아보니 유클리드 호제법(gcd) 방식을 채용하면 된다고 도움 받음
  2. 점 찍기 : 처음에는 bfs 방식으로 큐를 쓰면 되는줄 알았지만, 터질 각이 보여서... sqrt(스쿼트, 제곱근)을 쓰며 진행.
  3. 네트워크 : dfs 문제. 단순히 각 노드별 연결 여부 확인하면 되는 문제
  4. 영어 끝말잇기 : set을 써도 되지만, set 풀이 방식은 이전에 인공지능 도움받아서 풀었기 때문에 다른 방법으로 풀이함. 입력값 범위가 그렇게 크지 않기 때문에 그냥 2중 for문 써도 무방함.
  5. 행렬의 곱셈 : 이거는 3중 for문 채용. 행렬의 곱셈 공식을 구현하려면 어쩔 수 없었음....
  6. 단어 변환 : 시작 단어, 0(변환 횟수)를 큐에 넣으며 bfs 방식으로 풀이 진행
  7. 전화번호 목록 : 배열을 정렬 한 뒤, startsWith()문을 통해 구현하면 됨

(注記) 총평 : 이번주는 dfs 및 bfs 패턴이 많았던거 같음


라이브 코테 문제 <백준>


QnA :

(注記) 추가 사항

  • 단기 코스 수강으로 인해 다음주 부터 09시 스터디는 어려울 수 있음. 그렇기 때문에 추후 카톡으로 일정 조정 필요.

(注記) 건의 사항

  • 일단은 라이브 코테 문제는 PR로 올려두기로...

Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /