![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/vdXGQ/btreYaPpmZ8/6Kq3HDnuaz8k6H0J5SiSM1/img.png)
https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 변수가 10개밖에 안 된다. 이 정도면 하나하나 딕셔너리에 저장해 주자. 그리고 items() 함수와 replace() 함수를 이용해 key가 주어지면 value 값으로 변경해주자 마지막으로 s에는 string 형식으로 저장되어있으니 int로 변경해주면 된다. ⊙ 문제 풀이 d..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/b7Fxmg/btreWK37uaj/85n9SP7XQdj2axY3aEtQK1/img.png)
https://programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 파이썬 문자열 기본 개념을 다지기 좋은 문제다. 1️⃣ 1단계 제한조건 모든 대문자를 소문자로 변경하는 조건이 있다. 문자열에서 대문자를 소문자로 변경하는 함수는 lower()이다. # 1단계 (소문자 변경) new_id = new_id.lower() 2️⃣ 2단계 제한조건 소문자..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bdrX2d/btrehA8wltv/wfp81s6DfuwIdmttGjqYi1/img.png)
https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 자료 구조 스택 재귀 ⊙ 문제 접근 과정 제일 먼저 스택을 생각하며 괄호를 구현해준다. 괄호가 올바르게 들어왔는지 코드를 작성해준 후, 계산을 구현해준다. ()일 때, 곱하기 2 []일 때, 곱하기 3 그리고 더하기의 경우를 구현해준다. 이전 괄호가 어떤 괄호인지 체킹 해주면 된다. 자세한 건 아래 코드를 통해 확인하자 ⊙ 문제 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/od4Ah/btrdSdFF7E4/8JvnmOk1y1kXLkk7kBHdH1/img.png)
https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 자료 구조 큐 ⊙ 문제 접근 과정 큐를 문제에 주어진대로 구현해줬다. ⊙ 문제 풀이 from sys import stdin queue = [] N = int(stdin.readline()) for _ in range(N): input_ = stdin.readline().split() if input_[0] == 'push..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bflYzP/btrdJj6XbhP/tkd65Cfzkw3XR7DwjN9HY1/img.png)
https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 수학 구현 ⊙ 문제 접근 과정 중복을 제외한 값을 저장하는 set을 사용했다. 간단히 한 줄 요약하자면 셀프 넘버 = 전체 수 - 셀프 넘버 아닌 수 문자열로 변환하여 index를 사용했다. index로 각 자릿수를 사용해줬다. 자세한 건 코드를 통해 확인해보자 ⊙ 문제 풀이 number..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Jme2W/btrdwR96Gc4/uWdX4wvxGUz8jiBBr5cWjK/img.png)
https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 문제 접근 과정 C++로 풀다가 파이썬으로 도망 왔다. 문자열 문제는 역시 파이썬. 들어오는 사람을 user에 넣어준다. 그리고 그중 닉네임을 변경하는 인원은 갱신해준다. 따라서 나가는 인원을 제외하고 user에 값을 넣어준다. 그리고 들어오는 인원과 나가는 인원을 answer에 넣어주면 된다. ⊙ 문제 풀이 def sol..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/by6OvQ/btrbHcW84oO/BQjikK7NTOdMaBm1RxjmyK/img.png)
https://www.acmicpc.net/problem/1956 1956번: 운동 첫째 줄에 V와 E가 빈칸을 사이에 두고 주어진다. (2 ≤ V ≤ 400, 0 ≤ E ≤ V(V-1)) 다음 E개의 줄에는 각각 세 개의 정수 a, b, c가 주어진다. a번 마을에서 b번 마을로 가는 거리가 c인 도로가 있다는 의 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그래프 이론 플로이드-와샬 ⊙ 문제 접근 과정 플로이드 와샬을 통해 다시 돌아온 arr[i][i] 값 중 가장 작은 값을 출력해주면 된다. 만약 갱신이 안 되었을 시 -1을 출력해주면 된다. 자세한 설명은 코드에 주석으로 적어놨다! ⊙ 문제 풀이 import sys V, E = map(int, sys.s..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/2A3Tj/btrbwhxyLoP/ZK0P5ndGdxORkf8icrE13k/img.png)
https://www.acmicpc.net/problem/1748 1748번: 수 이어 쓰기 1 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 수학 구현 ⊙ 문제 접근 과정 N = int(input()) input_ = "" for i in range(1,N+1): input_ += str(i) print(len(input_)) 처음에는 위와 같이 코드를 짰다. 하지만 시간 초과. dp처럼 공식을 세워서 문제를 풀어야지 주어진 시간제한 안에 문제를 풀 수 있었다. 가만 생각해보니 패턴이 존재했다. 1부터 9까지의 값의 합이 아닌 자릿수의 합은 9이다. 마찬가지로 10부터 99까지 자릿수의 합은 90..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/br61tp/btq8NuMis8F/5IYLksDaJLGrokKEJvwRu1/img.png)
https://www.acmicpc.net/problem/15904 15904번: UCPC는 무엇의 약자일까? 첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 문자열 그리디 알고리즘 ⊙ 문제 접근 과정 UCPC라는 문자 배열을 만들어주어 입력받은 값이 같다면 UCPC 순서대로 제거해준다. 마지막에는 ucpc 길이가 0이라면 love, 0이 아니라면 hate 출력 ⊙ 문제 풀이 string = input() ucpc = ['U','C','P','C'] for k in st..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/lTC7l/btq7Mb8UJVd/rmImY7kL9EygGz8K4OQkC1/img.png)
https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 다이나믹 프로그래밍 ⊙ 문제 접근 과정 for문 2개를 사용하여 이중 list의 각각의 index를 만져줬다. 반복문 속의 조건문은 총 3가지로 나눴다. 가장 왼쪽에 있을 때, 가장 끝에 있을 때, 그리고 나머지. ⊙ 문제 풀이 N=int(input()) T=[] for _ in range(N): T.append(list(map(int,input().split()))) for i in range(1,N): f..
- Total
- Today
- Yesterday
- 답
- 그리디
- 연습문제
- 자바스크립트
- 운영체제
- Web
- 해답
- BFS
- 구현
- 쉽게배우는
- JS
- 문자열
- 쉽게배우는자바프로그래밍
- 자바
- java
- C++
- 풀이
- Python
- CPP
- 정리
- 프로그래머스
- 백준
- 파이썬
- 쉽게 배우는 자바 프로그래밍
- 정답
- 우종정
- py
- 정렬
- OS
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |