all(408)
-
프로그래머스 모음사전 코드 및 해설 (파이썬)
https://programmers.co.kr/learn/courses/30/lessons/84512 코딩테스트 연습 - 모음사전 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니 programmers.co.kr 재귀함수를 활용해 풀이했습니다. 주어진 스트링의 직전 스트링의 형태를 파악하고 여기에 +1 하는 식으로 풀이했습니다. 예를 들어 EIO의 직전 스트링은 EIIUU이므로, EIIUU의 순서에 1을 더한 것을 최종 답으로 반환하는 식입니다. 이를 위해 마지막 문자가 A가 아닌 경우는 그 문자의 전 문자(ex. E의 전 ..
2021.11.03 -
백준 1로 만들기 코드 및 해설 (파이썬)
https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 나누고 빼는 대신 곱하고 더하는 것으로 바꿔 풀었다. N에서 1로 줄여나가는 것이 아니라, 1에서 N으로 늘려가는 것으로 방향을 반대로 보고 풀었다. 먼저 dp를 모두 N인 리스트로 초기화해주고, index 1의 값만 0으로 바꿔준다. 1부터 N-1까지 다음을 반복한다. 현재 i에서 3 곱한 것이 N 이하면, graph[i]+1의 값과 graph[i*3] 중 최솟값 취하기 현재 i에서 2 곱한 것이 N 이하면, graph[i]+1의 값과 graph[i*2] 중 최솟값 취하기 현재 i에서 1 더한 것이 N 이하면..
2021.10.28 -
프로그래머스 위클리 챌린지 피로도 코드 및 해설 (파이썬)
https://programmers.co.kr/learn/courses/30/lessons/87946 코딩테스트 연습 - 12주차 XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던 programmers.co.kr 시간제한 코테를 풀어보며 느낀 점... 그냥 생각 안 나면 약간 무식하게 느껴지더라도 모든 경우의 수를 고려해서 풀기 그래서 itertools의 permutations로 모든 가능한 순서를 구하고, 그에 따라 최대로 방문할 수 있는 던전의 수를 구했다. 그 중 최댓값을 반환하면 된다 더 좋은 방법이 있겠지?? from itertools import pe..
2021.10.26 -
Hacktoberfest 2021 핵토버 페스트 2021 참여하기
https://hacktoberfest.digitalocean.com/ Hacktoberfest '21 Open source is changing the world – one contribution at a time. hacktoberfest.digitalocean.com 나의 소중한 스터디 메이트님이 알려주신 핵토버 페스트! 참 신기한게 많다 깃허브에 10월 한 달 동안 오픈소스에 Pull Request 4개를 하면 티셔츠를 받거나, 나무를 심을 수 있는 이벤트다! hacktoberfest라는 태그가 있는 repo나 Pull Request 자체에 hacktoberfest-accepted라는 라벨이 붙어있으면 다 카운트된다. 심지어 본인 repo도 인정된다 나는 코딩을 commit할 자신이 없어서 몸을 ..
2021.10.19 -
프로그래머스 교점에 별 만들기 코드 및 해설 (파이썬)
https://programmers.co.kr/learn/courses/30/lessons/87377 코딩테스트 연습 - 10주차 [[2, -1, 4], [-2, -1, 4], [0, -1, 1], [5, -8, -12], [5, 8, 12]] ["....*....", ".........", ".........", "*.......*", ".........", ".........", ".........", ".........", "*.......*"] [[0, 1, -1], [1, 0, -1], [1, 0, 1]] ["*.*"] [[1, -1, 0], [2, -1, 0], [4, - programmers.co.kr 문제에 제시된 참고사항을 참고해 두 직선의 모든 좌표가 정수인 교점을 구하는 함수 inte..
2021.10.13 -
백준 부분수열의 합 코드 및 해설 (파이썬)
https://www.acmicpc.net/problem/1182 1182번: 부분수열의 합 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. www.acmicpc.net 백트래킹으로 풀어보려고 했는데, 일단 내장 combinations 써서 풀었다 .. 1 ~ N개까지 모든 부분 수열을 구해보고 그 합이 S이면 answer 하나씩 증가해주기 import sys from itertools import combinations N,S = map(int, sys.stdin.readline().split()) nums = list(map..
2021.10.11