2026/03/12 10

🌿크래프톤 정글 2주차 WIL — 배운 것들의 기록

첫 번째 WIL을 쓴다. 2주가 지났고, 블로그엔 28개의 글이 쌓였다.숫자보다 중요한 건 그 안에서 내가 무엇을 배웠는가이다.📌 이번 주 목표 3가지✅ 목표 1. 주어진 알고리즘 문제를 모두 풀고, 블로그에 게시한다.✅ 목표 2. 파이썬 문법을 의미 있는 코드를 작성할 수 있는 수준까지 익힌다.✅ 목표 3. 내 코드와 풀이 방식을 팀원에게 설명할 수 있는 능력을 기른다.세 가지 모두 달성했다. 다만 "달성"의 의미가 각기 달랐다. 목표 1은 양적 완료였고, 목표 2는 언어 전환의 고통이었으며, 목표 3은 설명하려다 내 이해 부족이 드러나는 경험이었다.📊 핵심 역량별 WIL1️⃣ 문제해결 (Problem Solving)정의: 주어진 문제를 정의하고 논리적으로 해결하는 능력이번 주 제공된 알고리즘 22..

[정글 알고리즘]-[하]-백준 1157 단어 공부

📌 문제 요약알파벳으로 이루어진 단어에서 가장 많이 사용된 알파벳을 대문자로 출력하라.단, 최다 빈도 알파벳이 여러 개이면 ?를 출력한다.💡 핵심 아이디어① 대문자로 통일 (.upper()) ② 딕셔너리로 빈도수 집계 ③ 최댓값 알파벳이 1개인지 확인대소문자 구분 없이 세야 하므로 입력을 먼저 .upper() 처리🐍 코드 분석word = input().upper() # 대문자 통일count = {}for ch in word: count[ch] = count.get(ch, 0) + 1 # 빈도수 집계max_cnt = max(count.values()) # 최대 빈도수# 최대 빈도 알파벳 목록candidates = [k for k, v in count.items()..

[정글 알고리즘]-[하]-2675 문자열 반복

📌 문제 요약각 테스트케이스마다 정수 R과 문자열 S가 주어지면, S의 각 문자를 R번씩 반복한 문자열을 출력하라.예: R=3, S="ABC" → "AAABBBCCC"💡 핵심 아이디어문자열을 순회하며 각 문자에 * R 연산으로 반복 → 이어붙이기Python에서 문자열 * n 은 해당 문자열을 n번 반복한 새 문자열을 반환🐍 코드 분석T = int(input())for _ in range(T): R, S = input().split() R = int(R) result = "" for c in S: # 각 문자 순회 result += c * R # R번 반복해서 이어붙이기 print(result)⚠️ 자주 하는 실수실수설명S * R 전체 반복..

[정글 알고리즘]-[하]-백준4344 평균은 넘겠지

📌 문제 요약각 케이스마다 학생 수와 점수들이 주어질 때, 평균을 초과하는 학생의 비율을 소수점 3자리로 출력하라.평균 초과 (strictly greater) 이므로 평균과 같은 점수는 포함하지 않음💡 핵심 아이디어① 합계 → 평균 계산 ② 평균 초과 학생 카운트 ③ 비율(%) 출력출력 형식: "%.3f%%" — %% 는 % 문자 자체를 출력하는 이스케이프🐍 코드 분석num = int(input())for _ in range(num): a = list(map(int, input().split())) cnt = a[0] # 첫 번째 값: 학생 수 scores = a[1:] # 나머지: 점수 목록 avg = sum(scores) / cnt ..

[정글 알고리즘]-[하]-백준17478 재귀함수가 뭔가요?

📌 문제 요약정수 N이 주어지면, 재귀함수를 N번 중첩하여 정해진 형식의 문장을 출력하라.깊이(depth)마다 ____(언더바 4개)를 depth번 앞에 붙인다.🔁 재귀 구조 이해recursion(depth)├─ depth == N 이면 → 베이스 케이스 (재귀 종료)│ "재귀함수는 자기 자신을 호출하는 함수라네" 출력└─ 아니면 → 이야기 3줄 출력 후 recursion(depth+1) 호출 호출 후 "라고 답변하였지." 출력핵심: recursion(depth+1) 호출 이후에도 코드가 실행됨 → 재귀 반환 시 출력 발생🐍 코드 분석n = int(input())print("어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.")def recursion(depth): c = "..

[정글 알고리즘]-[하]-백준1978 소수 찾기

📌 문제 요약N개의 자연수 중 소수가 몇 개인지 출력하라.소수: 1과 자기 자신만을 약수로 가지는 수 (단, 1은 소수 아님)💡 소수 판별 원리약수의 개수가 정확히 1개이면 소수.1부터 n-1까지 반복하면 약수 중 1만 세이므로, 약수 카운트 == 1 이면 소수.더 빠른 방법: 2부터 √n까지만 나눠보기 → 이 문제는 입력이 작아서 완전탐색도 OK🐍 코드 분석n = int(input())a = list(map(int, input().split()))count = 0for num in a: divisors = 0 for d in range(1, num): # 1 ~ num-1 탐색 if num % d == 0: divisors += 1 if d..

[정글 알고리즘]-[하]-백준2562 최댓값

📌 문제 요약9개의 서로 다른 자연수가 주어질 때, 최댓값과 그 위치(1-index)를 출력하라.입력: 9줄, 각각 자연수 한 개 | 출력: 최댓값 / 위치(1-index)💡 핵심 아이디어리스트에 9개 값을 저장한 뒤, 순회하면서 현재 최댓값보다 크면 갱신 + 인덱스 기록.⚠️ 인덱스는 0-based 이므로 출력 시 +1 필요🐍 코드 분석a = []for i in range(9): a.append(int(input()))max_val = a[0] # 첫 번째 값으로 초기화max_idx = 0for j in range(9): if a[j] > max_val: # 더 큰 값 발견 max_val = a[j] max_idx = jprint(max_val)pri..

[정글 알고리즘]-[중]-백준 10971 외판원 순회 2

01 하노이 탑 📌 02 외판원 순회실버 2 · DFS 백트래킹[백준 10971] 외판원 순회 2완전탐색 + 가지치기cedis · 2026.03 | Python · DFS · 백트래킹 · 완전탐색도시들을 한 번씩 방문하고 출발지로 돌아오는 최소 비용 경로를 찾는 문제다. 이름은 거창하지만 핵심은 단순하다. 모든 경우를 탐색하되, 쓸모없는 경로는 일찍 잘라낸다. 그게 바로 백트래킹 + 가지치기다.🔗 문제 링크: 백준 10971번 - 외판원 순회 2N개의 도시를 모두 방문하고 시작 도시로 돌아오는 최소 비용을 구하라.W[i][j]: i→j 비용 (0이면 연결 안 됨). N ≤ 10① 문제 이해: 그래프로 보기N=4, 도시가 0~3번이라 하자. 인접행렬로 비용이 주어진다.W0123001015201509..

[정글 알고리즘]-[중]-백준 1914 하노이 탑 - 재귀

📌 01 하노이 탑 02 외판원 순회 골드 5 · 재귀 [백준 1914] 하노이 탑재귀의 정수를 맛보다 cedis · 2026.03 | Python · 재귀 · 수학 재귀를 처음 배울 때 항상 따라오는 문제가 있다. 하노이 탑이다. 코드는 딱 10줄인데, 처음 보면 도대체 어떻게 돌아가는지 전혀 안 보인다. 이 글은 그 "왜 이게 되지?" 를 끝까지 파헤친 기록이다. 🔗 문제 링크: 백준 1914번 - 하노이 탑 N개의 원판을 기둥 1에서 기둥 3으로 옮기는 이동 횟수와 과정을 출력하라. 단, 큰 원판이 작은 원판 위에 놓일 수 없다. (N ≤ 100) ① 하노이 탑 규칙 기둥이 3개, 원판이 N개 있다. 규칙은 딱 두 가지다..

바이브코딩으로 하루 만에 팀 프로젝트 완성하기 — Clean Email 회고

크래프톤 정글 × 오픈AI 워크숍 회고 바이브코딩으로 팀이 같이 달리려면 어떻게 해야 할까 AI가 코드를 짜주는 시대, 협업은 오히려 더 어려워졌다. 하루 동안 세 명이 부딪히며 찾아낸 방법. 📅 2026.03 👥 3인 팀 ⏱️ 하루 📦 Clean Email Prologue 사실 이 글을 쓰기가 조금 쑥스럽다. 하루 만에 만든 프로젝트다. 내놓기엔 허술한 구석도 있다. 그런데 이 하루가 생각보다 많은 것을 남겼다. 특히 "AI랑 같이 코딩하는데, 팀이 어떻게 협업하지?" 라는 물음. 그 고민의 과정을 기록해두고 싶었다. · · · 🌿 시작은 크래프톤 정글 오픈AI 워크숍 크래프톤 정..

개발/프로젝트 2026.03.12