일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 그리디
- 프론트엔드개발자
- nodejs
- 알고리즘
- BFS
- github
- 코테
- Javascript
- 백준
- KAKAO
- js
- 국비지원
- 호이스팅
- cpu
- 국비지원취업
- 코딩테스트
- 야놀자
- 컴퓨터과학
- CSS
- 부트캠프
- git
- 자바스크립트
- 컴퓨터공학
- 너비우선탐색
- 패스트캠퍼스
- DFS
- CS
- computerscience
- html/css/js
- LinkSnap
- Today
- Total
목록백준 (12)
My Boundary As Much As I Experienced
https://www.acmicpc.net/problem/20529 문제 수준: 실버1 문제 요약: 수많은 학생 중에 딱 3명을 뽑았을 때, mbti 알파벳의 차이가 가장 적은 조합이 어떻게 되는지를 판단하는 문제이다. 예를 들어, INFP 학생과 INFP 학생은 완전 똑같으니 차이가 0이다. INFP 학생과 INTP 학생은 알파벳 하나가 다르니 차이는 1이다. 이를 세 학생의 심리적 거리로 나타내면 라고 할 수 있단다. N명 (N >= 3)의 학생 중에서 가장 적은 차이를 보이는 엠비티아이 조합을 구하면 된다. 입출력 예 (입력 / 출력): 문제 풀이 아이디어: 그런데 조금 생각해보면 알 수 있는 사실이 있다. (E / I), (N / S), (F / T), (P / J) 모두 알파벳은 두 개 뿐이므로..
https://www.acmicpc.net/problem/1697 문제 수준: 실버1 문제 요약: 0~100000만큼의 너비가 있는 도로 위에서 수빈이와 동생은 숨바꼭질을 하고있다... 수빈이가 가능한 이동 방식은 1. 앞으로 한 칸 2. 뒤로 한 칸 3. 두 배 점프 이 있다. 이 모든 행동은 1초의 시간을 소요한다. 그렇다면, 동생의 위치까지 수빈이가 최단 시간으로 도달하려면 몇 초가 걸리는가? 입출력 예 (입력 / 출력): 첫 줄에 수빈이의 위치와 동생을 위치가 주어진다. 최단시간으로 동생을 잡는다면 몇 소가 걸리는지 출력하라. 문제 풀이 전략: 계단오르기 문제와 조금 비슷한 유형이다. BFS입문 문제로 유명한듯 하다. 푸 1. queue에 수빈이의 위치를 넣는다. 2. queue에서 위치 하나를 ..
https://www.acmicpc.net/problem/1620 문제 수준: 실버4 문제 요약: 이다솜씨가 포켓몬 암기 시험 보는데 쉽게 풀기 위해 1. 번호가 나오면 해당 번호 포켓몬 이름 대기 2. 이름이 나오면 해당 이름 포켓몬 번호 대기 를 하는 프로그램을 만들어줘라. (문제의 3분의2는 헛소리이고 결국 하라는건 이거였다ㅋㅋ..) 입출력 예 (입력 / 출력): 첫째줄엔 도감 등록 포켓몬 갯수 N와 시험 문제 갯수 M가 나오고 두번째 줄부터 N+1번째 줄까진 도감 등록 포켓몬 이름들이 나오고, 나머지 줄들은 문제가 나온다. 도감에 등록된 순서가 포켓몬의 번호이다. 문제 풀이 전략: 같은 날 푼 요세푸스 문제와 같은 레벨 문제가 맞나? 싶을 정도로 쉽게 풀었다. 1. 포켓몬 번호가 주어지면 배열의 ..
https://www.acmicpc.net/problem/1158 문제 수준: 실버4 문제 요약: 주어진 N명의 사람이 순서대로 둘러앉아 있다. 이 중 K번 째 사람을 순서대로 뺄 때, 뺀 순서를 구하시오. 7명의 사람이 있고 3을 카운트하며 한 명 씩 뺀다고 할 때, 순서로 빠지게 된다. 입출력 예 (입력 / 출력): 입력 첫 째 줄에는 N명과 기준 K가 주어진다. 문제 풀이 전략: queue 문제를 많이 안 풀어봐서 이게 queue문제인지 아닌지 많이 헤맸다. 처음 도전하다가 실패한 로직은 아래와 같다. 처음엔 while문 순회로 계속 방문하며 1. 방문한 노드는 넘어가고 2. 방문 안 했으면서 + 주어진 순서가 아니면 순서만 ++하고 넘어가고 3. 방문 안 했으면서 + 주어진 순서면 정답 배열에 넣..
https://www.acmicpc.net/problem/27971 문제 수준: 실버1 문제 요약: 마법소녀 마도카의 고양이 생성(백준, 27961)에 감명받은 호무라는 자기는 강아지를 생성하기로 했다. 호무라는 N마리의 강아지를 정확히 가지고 싶다. (초과하면 안 된다.) 이를 위해 호무라가 쓸 수 있는 마법은 2가지이다. 강아지를 A마리 생성한다. 강아지를 B마리 생성한다. 그러나 강아지 마리 수가 특정 마리수 영역에 도달하면 초기화되는 버그(...)가 있다. (쉽게 버그영역이라 하겠다.) A마리 혹은 B마리를 생성하지만 '버그 영역에 포함되는 마리 수'를 피해서 만들어야 한다. 호무라가 원하는 N마리의 강아지를 정확히 만드려면 어떻게 해야되는가? 입출력 예 (입력 / 출력): 첫 번째 줄은 이렇게 ..
https://www.acmicpc.net/problem/27961 27961번: 고양이는 많을수록 좋다올바른 행동 순서가 될 수 있는 하나의 예시는 아래와 같으며, $4$번보다 더 작은 행동 횟수로 $6$마리의 고양이를 마도카의 집에 들이는 것은 불가능하다. 초기 상태($0$마리) $\rightarrow$ 생성www.acmicpc.net 문제 수준:브론즈1 문제 요약:마도카의 목표는 고양이 N마리를 생성하는 것이다.마도카가 쓸 수 있는 마법은고양이 1마리 늘린다.현재 있는 고양이 수의 일부 또는 전체를 복사한다. (현재 있는 고양이가 M 마리일 때 1~M 마리 복사)목표 N마리가 주어졌을 때 최소 몇 번의 생성마법으로 만들 수 있는가? 입출력 예 (입력 / 출력): 문제 풀이 전략:1. 처음 0마리..
https://www.acmicpc.net/problem/11729 문제 수준: 실버1, DFS 문제 요약: 유명한 하노이탑 문제이다. 1번 영역에서 3번 영역으로 모든 탑을 옮기면 되는 문제이다. 조건은 2가지 있다. 1. 한 번에 1개의 디스크만 옮길 수 있다. 2. 자신보다 작은 디스크 위에 더 큰 디스크를 올려놓을 수 없다. 이때 탑의 높이가 주어지면 최소 몇 번의 이동으로 3번까지 옮길 수 있는지를 구하여라. 입출력 예 (입력 / 출력): 문제 풀이 전략: 결국 가장 아래에 깔린 가장 큰 디스크가 3번 영역에 도달을 해야 나머지를 옮길 수 있다. 그 말인 즉슨 N개의 디스크가 있다면 N-1개의 디스크를 2번 영역(보조영역, Auxiliary)에 옮겨놔야(step1 -> step2) 1번의 맨마지..
https://www.acmicpc.net/problem/1992 문제 수준: 실버1 문제 요약: 흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리라는 방법이 있다. 주어진 영상이 모두 흰색이면 '0'을 출력하고, 모두 검은색이면 '1'을 출력한다. 주어진 영상이 흰색과 검은색이 섞여있으면, 화면을 4등분으로 나눠서 괄호 안에 좌상단, 우상단, 좌하단, 우하단 순서로 숫자를 기입한다. 자세한 예는 아래와 같다. 위의 그림에선 4x4 픽셀에 우측 상단에만 흰색이고 나머지 영역은 검은색이다. 이는 (0111)이라고 표현할 수 있다. 이런 경우에는 어떻게 표기할까? 좌상단을 기준으로 봤을때도 한 픽셀이 검은 영역이 되어 깔끔하게 흰색이 아닌 상황이다. 이럴땐 좌상단을 기운으로 또 한번 4분면을 나눠 괄호..
https://www.acmicpc.net/problem/10799 문제 유형: 스택 문제 요약: '()'되어 있는 곳이 레이저로 자르는 곳. 그 이외의 괄호는 한 판때기의 시작점 혹은 끝점을 나타낸다. 레이저로 자른 판때기는 총 몇 개가 나오는가? 입출력 예 (입력 / 출력): 총 몇 개인지를 출력값으로 내보낸다. 문제 풀이 전략: 판때기의 시작점인 '('은 판이 현재 열마나 깔려있나를 보여주는 갯수이다. 판때기의 끝점인 ')'은 깔려있는 칸이 하나 줄어든다는 뜻이다. 그리고 잘리고 남은 나머지 조각 1개가 발생한다는 뜻이다. 레이저를 뜻하는 '()'은 현재까지 판때기가 얼마나 깔려있는지를 카운팅하라는 뜻으로 볼 수 있다. 이 문제는 stack을 이용해 풀 수 있다. '('을 계속 카운팅하다가 '()'..
https://www.acmicpc.net/problem/3986 문제 유형: stack 문제 요약: 평석이는 단어 위로 아치형 곡선을 그어 같은 글자끼리(A는 A끼리, B는 B끼리) 쌍을 짓기로 하였다. 만약 선끼리 교차하지 않으면서 각 글자를 정확히 한 개의 다른 위치에 있는 같은 글자와 짝 지을수 있다면, 그 단어는 '좋은 단어'이다. 평석이가 '좋은 단어' 개수를 세는 것을 도와주자. 입출력 예 (입력 / 출력): 좋은 단어와 나쁜 단어 설명: 나쁜 단어는 A끼리, B끼리 연결 시켰을 때, 서로 교차하는 단어를 뜻한다. 좋은 단어는 겹치지 않는 단어이다. 이렇게 보면 회문을 찾으라는 문제처럼 생각할 수 있는데 이런 경우는 회문이 아니어도 중첩되지 않는다. 문제 풀이 및 전략: 예시로 보아 단지 A..