Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions 230605 BOJ G4 문자열 폭발/문자열 폭발.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
def solution(s, bomb):
# s = str(input())
# bomb = str(input())

stack = []
for elem in s:
stack.append(elem)
if "".join(stack[-len(bomb):])== bomb:
for _ in range(len(bomb)):
stack.pop()
if stack:
print(''.join(stack))
else:
print('FRULA')

print(solution("mirkovC4nizCC44", "C4")) #mirkovniz
print(solution("12ab112ab2ab", "12ab")) #FRULA
26 changes: 26 additions & 0 deletions 230614 BOJ G4 팰린드롬/팰린드롬_재훈.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# 백준 사이트는 python과 pypy3가 있는데 혹시 알고리즘이 틀리지 않은것 같다면 둘다 시도해보자...


import sys
input = sys.stdin.readline

N, M = map(int,input().split())
info = [list(map(int,input().split())) for _ in range(M)]
dp = [ [0 for _ in range(N)] for _ in range(M)]

for i in range(M):
dp[i][0] = info[i][0]

for day in range(1,N):
for dessert in range(M):
for i in range(M):
if i == dessert:
dp[dessert][day] = max(dp[dessert][day], info[dessert][day]//2 + dp[i][day-1])
else:
dp[dessert][day] = max(dp[dessert][day], info[dessert][day] + dp[i][day-1])

result = 0
for i in range(M):
result = max(result,dp[i][-1])

print(result)