전체162 백준 알고리즘 15650 (N과 M(2)) - python (재풀이) 백준 알고리즘 15650 (N과 M(2)) - python (재풀이) > https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 오랜만에 다시 하니까 헷갈린다...! 중복 없이, 오름 차순 문제! [문제 풀이] 1. N의 index가 헷갈리지 않게 N+1의 자연수화 2. 탈출 조건 depth == M 설정 3. 이전 자릿수보다 크게 되도록 for문에서 i+1 설정 4. 배열에 append 하면서 백트래킹 import sys def DFS(depth,.. 2022. 5. 17. 백준 알고리즘 2231 (분해합) - python (재풀이) 백준 알고리즘 2231 (분해합) - python > https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net [문제 풀이] 1. 자신과 각 자릿수를 더해야하기 때문에, 간단하게 하려면 String으로 접근하는게 낫다. 2. 없으면 0을 출력하기 위해 있을 경우 미리 return 활용 import sys N = int(sys.stdin.readline()) def solve(): for i in range(N): result.. 2022. 5. 16. 백준 알고리즘 15649 (N과 M(1)) - python (재풀이) 백준 알고리즘 15649 (N과 M(1)) - python > https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 백트래킹의 기본 문제. 1~N까지 자연수 중 길이가 M인 중복되지 않는 수열 출력 [문제 풀이] 1. depth가 늘어날 때마다 배열을 저장해 줄 result 생성 2. 알아보기 쉽게 (N+1) size로 하여 자연수 값 그대로 적용되게 함 3. DFS 탈출 조건 : 길이(이 문제는 depth로 생각해도 됨)가 M을 만족 4. 저장된.. 2022. 5. 7. 백준 알고리즘 1012 (유기농 배추) - python (재풀이) 백준 알고리즘 1012 (유기농 배추) - python > https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 다시 코딩 연습을 시작한다! 가즈아!!! 거의 백지인 상태지만(ㅠ) 이전에 풀었던 문제들을 다시 재풀이해본다. 위 문제를 요약하면, Map의 크기와 1의 좌표 위치를 받아서 1의 군집이 몇 개 있는지를 체크하는 문제이다. [문제 풀이] 1. 입력들을 받아서 _map에 저장 2. 처리할 수 있는 간단한 예외는 미리 처리 (0, 1, 전체) -> 처리 속.. 2022. 5. 7. 무지의 지 아는 것을 안다고 하고, 모르는 것을 모른다고 하는 것이 진정으로 아는 것이다. (知之爲知之 不知爲不知 是知也) by 공자, [논어 위정편] 2021. 8. 1. 백준 알고리즘 11047 (동전 0) - python 백준 알고리즘 11047 (동전 0) > https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 의외로 시간이 조금 걸렸다. 이 문제는 풀이가 간단해지는 전제 조건들이 있다. 1. 주어진 동전들로 무조건 조합이 된다 : 예외 처리 없어도 됨 2. 동전은 오름차순으로 입력이 들어온다 : 역순으로만 하면 내림차순 따라서, 나름 간단하게 풀이가 가능하다. 1. 큰 수부터(역순으로) 목표 K를 .. 2021. 7. 28. 백준 알고리즘 2018 (통계학) - python 백준 알고리즘 2018 (통계학) > https://www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 산술평균, 중앙값, 범위는 모두 sort 후에 간단하게 해결된다. 여기서 고민할 부분은 최빈값. 게다가 생각해볼 조건도 있다. 먼저, 최빈값을 구하기 위해서 count에 적합한 dictionary를 활용했다. (dictionary가 list보다 검색이 빠르다는 장점) ([from collections import Counter] 방법도 결국 dictionary의 확장) 1... 2021. 7. 24. 정녕, 저를 버리셨나요. 그래, 너를 창조해버렸고, 사랑해버렸고, 구원해버렸다. 오히려, 나와 내 아들을 십자가에 버렸다. by think_why 2021. 7. 22. 초, 중, 고, 대 초심을 잃은 자여, 중심은 잃지 말게. 고민은 멈춰 두고, 대담히 달려 가세. by think_why 2021. 7. 21. 이전 1 2 3 4 5 6 7 ··· 18 다음 728x90