본문 바로가기

알고리즘60

[Python] 백준 14226: 이모티콘 https://www.acmicpc.net/problem/14226 14226번: 이모티콘 영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다. 영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만 www.acmicpc.net 1. 백그라운드와 클립보드 둘다 작업해야하기 때문에 2차원 ch 배열을 만들어준다. 2. 조건중에서 -1 이 있기 때문에 값이 s값을 넘어갈수도 있으므로 배열을 s*2+1 만큼 선언해준다. 3. bfs를 사용하였고 조건에 맞춰서 queue에 삽입한다. from collections import deque s = int(input()) ch = [[0 for _ in range(2001)] for _.. 2021. 10. 4.
[Python] 백준 2631: 줄세우기 https://www.acmicpc.net/problem/2631 2631번: 줄세우기 KOI 어린이집에는 N명의 아이들이 있다. 오늘은 소풍을 가는 날이다. 선생님은 1번부터 N번까지 번호가 적혀있는 번호표를 아이들의 가슴에 붙여주었다. 선생님은 아이들을 효과적으로 보호하기 www.acmicpc.net 1. 증가하는 부분수열중 가장 긴 수열은 3 7 5 2 6 1 4 이다. 2. 이 사이에 숫자를 오름차순으로 넣어주기만하면 되므로 ans = 아이들의 수 - 가장긴 증가하는 부분수열의 길이이다. n = int(input()) chd = [] dp = [0 for _ in range(n)] for i in range(n): chd.append(int(input())) for j in range(i): if.. 2021. 10. 4.
[Python] 백준 5554: 1학년 https://www.acmicpc.net/problem/5557 5557번: 1학년 상근이가 1학년 때, 덧셈, 뺄셈을 매우 좋아했다. 상근이는 숫자가 줄 지어있는 것을 보기만 하면, 마지막 두 숫자 사이에 '='을 넣고, 나머지 숫자 사이에는 '+' 또는 '-'를 넣어 등식을 만들며 놀 www.acmicpc.net 1. n-1 번째까지 연산한 값이 n번째 값과 같으면 성립한다. 2. dy 를 0~20까지 초기화한다. 3. 처음수는 무조건 0~20 사이이므로 1로 초기화해준다. 4. 1번째 부터 바로 이전의 dy 배열에 연산한 결과에 따라 배열에 담겨있는 값(x) - j >= 0와 x + j 2021. 10. 3.
[Python] 백준 10942: 팰린드롬? https://www.acmicpc.net/problem/10942 10942번: 팰린드롬? 총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다. www.acmicpc.net 1. m 2021. 10. 3.