본문 바로가기

전체 글369

프로그래머스 혼자서 하는 틱택토 문제 URL : https://school.programmers.co.kr/learn/courses/30/lessons/160585 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 틱택토의 룰에맞게 게임이 진행됐는지 확인하는 문제입니다. 비기든 이기든 아직게임중인지 상관없습니다. 규칙에 맞는지만 확인하면됩니다. O가 선공이고 X가 후공이니 반드시 선공은 X보다 하나 많거나 같거나 입니다. X는 절대로 O보다 많을수는 없구 그리고 게임이 끝날경우 O가 이겼다면 O는 반드시 X보다 하나 많은상태에서 이겨야 맞는게임입니다. X가 이겼다면 x는 반드시 O와 같은 .. 2023. 12. 14.
백준 18427 함께 블록 쌓기 문제 URL : https://www.acmicpc.net/problem/18427 18427번: 함께 블록 쌓기 첫째 줄에 자연수 N, M, H가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 50, 1 ≤ M ≤ 10, 1 ≤ H ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 각 학생이 가진 블록들의 높이가 공백을 기준으로 구 www.acmicpc.net 문제 접근법 : 배낭문제이지만 dfs+재귀로 풀려고했는데 메모리는 충분히 가능하지만 메모이제이션을 사용한다해도 최악의경우 50^10 이니 너무 커서 시간초과가 나더군요 buttom up방식을 이용해서 경우의수로 구해야합니다. 소스코드 : import sys sys.setrecursionlimit(2000000) input = sys.stdin.. 2023. 12. 13.
백준 16493 최대 페이지 수 문제 URL : https://www.acmicpc.net/problem/16493 16493번: 최대 페이지 수 첫째 줄에 N(1 ≤ N ≤ 200)과 챕터의 수 M(1 ≤ M ≤ 20)이 주어진다. 둘째 줄부터 각 챕터 당 읽는데 소요되는 일 수와 페이지 수가 주어진다. 소요되는 일 수는 20보다 작거나 같은 자연수이고, 페이 www.acmicpc.net 문제 접근법 : 할수 요소일 수에서 가장 많은 페이지를 보는게 이득입니다. m 이20이라 재귀로 전수조사해도 2^20이라 100만 으로 충분히가능하고 재귀 + 메모이제이션 은 더빠르게 가능하고 어차피 배낭문제로 반복문으로 해결하는게 가장 빠르게 가능합니다. 소스코드 : import sys input = sys.stdin.readline n,m = m.. 2023. 12. 13.
백준 17845 수강 과목 문제 URL : https://www.acmicpc.net/problem/17845 17845번: 수강 과목 첫줄에 서윤이의 최대 공부시간 N (1 ≤ N ≤ 10,000), 과목 수 K (1 ≤ K ≤ 1,000)이 공백을 사이에 두고 주어진다. 이후 K개의 줄에 중요도 I (1 ≤ I ≤ 100,000), 필요한 공부시간 (1 ≤ T ≤ 10,000)이 www.acmicpc.net 문제 접근법: 배낭문제이지만 dfs+메모이제이션으로 활용해서 풀수있는문제입니다. 메모리는 10000*1000 이라 1천만까지는 괜찮기때문에 메모이제이션이 c++에선 가능하지만 똑같이 코딩했는데 python에서 시간초과가 나더군요 파이썬은 dfs + 메모이제이션이 힘든것같습니다. 처음에 파이썬으로 풀어서 시간초과 나길래 어딜.. 2023. 12. 12.