본문 바로가기

분류 전체보기82

[백준] 16987번: 계란으로 계란치기 파이썬 https://www.acmicpc.net/problem/16987문제에 서론이 좀 긴데 다 무시하고요악하자면 계란들끼리 서로 부딪쳐서 최대한 많은 계란을 깨는 문제. 각 계란에는 내구도와 무게가 있다. 계란을 부딪치면 내구도가 상대 계란의 무게만큼 감소하고, 내구도가 0 이하가 되면 계란이 깨진다.N개의 계란이 일렬로 놓여있다.왼쪽부터 차례로 계란을 들어 다른 계란을 친다.계란이 깨지면 더 이상 칠 수 없다.최대 몇 개의 계란을 깰 수 있는지 구한다.입력:첫 줄에 계란의 수 N (1 ≤ N ≤ 8)다음 N개의 줄에 각 계란의 내구도와 무게가 주어진다.출력:깨진 계란의 최대 개수를 출력.(고마워 gpt) 풀이import sys# h = 손에든 계란 번호def egg(h): global mx, count.. 2024. 7. 5.
[백준] 1759번: 암호 만들기 파이썬 https://www.acmicpc.net/problem/1759 백트래킹으로 푸는 문제.모음이 최소 한번, 자음이 최소 두번 들어가게 만들어야하는데이걸 어렵게 생각하다가생각 보다 간단하게 그냥 갯수 세는 식으로 구현하면 되겠구나 해서 바로 풀었다.풀이import sysdef func(k): global vowel, consonant if k == 0: vowel =0 consonant = 0 if k == l and vowel>0 and consonant >1: for i in range(l): print(password[i], end = '') print('') return 0 for i in range(c): if not isused[i] and (.. 2024. 6. 30.
[백준] 14442번: 벽 부수고 이동하기2 파이썬 https://www.acmicpc.net/problem/14442벽 부수고 이동하기 1에서 살짝만 수정하면 될줄 알았는데... 시간초과라니? 파이썬이 느리긴 느린가보다.파이썬으로 정답인 사람이 아무도 없네 pypy3로 바꿔서 제출. ....? 시간초과 https://www.acmicpc.net/board/view/111938이 글 보고 배열 차원 선언 순서를 바꿔서 다시 제출하니 성공했다.배열차원 순서에 따라 이렇게 차이가 나는건 처음 알았다.....또 배우고 갑니다.... 코드import sysfrom collections import dequedx = [1, 0, -1, 0]dy = [0, 1, 0, -1]def bfs(): q = deque() q.append((0, 0, 0)) # x, y,.. 2024. 6. 27.
[백준] 2206번: 벽 부수고 이동하기 파이썬 https://www.acmicpc.net/problem/2206 어렵다벽을 한번은 부술수있는데이걸 어떻게 구현해야할지 도저히 떠오르지 않아서...힌트글 에서 3차원 배열로 방문여부까지 큐에 저장해야한다는 걸 보고 겨우 풀었다. 풀이import sysfrom collections import dequedx = [1, 0, -1, 0]dy = [0, 1, 0, -1]def bfs(): q = deque() q.append((0, 0, 0)) # x, y, 벽 파괴 여부 dist[0][0][0] = 1 while q: x, y, z = q.popleft() for i in range(4): nx = x + dx[i] ny = y + dy[i] if 0  이동칸을 .. 2024. 6. 26.