본문 바로가기

Algorithm475

[파이썬] 백준 14391 : 종이 조각 (골드3) [파이썬] 백준 14391 : 종이 조각 (골드3) 14391번: 종이 조각 영선이는 숫자가 쓰여 있는 직사각형 종이를 가지고 있다. 종이는 1×1 크기의 정사각형 칸으로 나누어져 있고, 숫자는 각 칸에 하나씩 쓰여 있다. 행은 위에서부터 아래까지 번호가 매겨져 있고, www.acmicpc.net 문제 풀이 0. 방향성 생각 완전탐색 같은 크기의 마스크를 생성하고 0 또는 1로 채운다. 0이면 오른쪽으로 이어붙이기. 1이면 아래로 이어붙이기. BFS를 사용해서 현재 마스크 값이 0이면 끝까지탐색 or 마스크가 1 나오기 전까지 우측으로 탐색 현재 마스크값이 1이면 끝까지 탐색 or 마스크가 0 나오기 전까지 아래쪽으로 탐색 1. 입력 from itertools import product as PI fro.. 2023. 10. 22.
[파이썬] 백준 14550 : 마리오 파티 (골드5) [파이썬] 백준 14550 : 마리오 파티 (골드5) 14550번: 마리오 파티 입력은 20개 이하의 테스트케이스로 구성되어 있고, 맨 끝에 0이 온다. 각 테스트케이스의 첫 줄에는 N (출발점과 별 사이의 칸 수), S, T가 주어진다. 2 ≤ N ≤ 200, 2 ≤ S ≤ 10, N + 1 ≤ ST, T ≤ N + 1이 www.acmicpc.net 문제 풀이 0. 방향성 생각 순방향 DP 최대값을 구하고 값이 arr가 음수인 부분이 있으므로 DP 초기화를 -1e9로 시켜준다 1. 입력 while True: info = list(map(int,input().split())) if info == [0]: break n,dice,chance = info arr = [] while len(arr) < n: .. 2023. 10. 22.
[파이썬] 프로그래머스 : 불량 사용자 (Lv.3) [파이썬] 프로그래머스 : 불량 사용자 (Lv.3) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 방향성 생각 케이스 수 매우 적다. 완탐으로 탐색 두 문자열을 비교한다. 길이가 같아야 하고, 모든 위치에서 알파벳이 같아야함. *있으면 그 위치는 패스 answer라는 set에 저장하려면 집합은 안된다. 튜플로 넣는다. 튜플에서는 순서가 보장되니 같은 군집이라도 다르게 표현되므로 정렬을 해서 저장 전체코드 from itertools import permutations as P def solution(user_id, banned_id): def chec.. 2023. 10. 13.
[파이썬] 백준 2193 : 이친수 (실버3) [파이썬] 백준 2193 : 이친수 (실버3) 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 문제 풀이 방향성 생각 2가지 상태가 나누어진 DP 현재 1인경우 다음은 0 현재 0인경우 다음은 0 또는 1 전체코드 n = int(input()) dp = [[0]*n for _ in range(2)] dp[1][0] = 1 for i in range(n-1): dp[0][i+1] += (dp[0][i] + dp[1][i]) dp[1][i+1] += dp[0][i] print(dp[0][-1]+dp[1.. 2023. 10. 12.