본문 바로가기

Algorithm475

[파이썬] 백준 5430 : AC (골드5) [파이썬] 백준 5430 : AC (골드5) 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 문제 풀이 0. 방향성 생각 큐,스택 + 문자열 문제 R의 개수가 연속으로 짝수개 나올 때 배열을 건드릴 필요가 없다. 따라서 s를 먼저 순회하면서 명령어 개수를 줄여준다. D 연산은 맨 앞 요소를 제거한다. 시간복잡도가 O(n)이므로 deque로 구현한다. deque : 나온 R의 개수에 따라서 pop, popleft를 골라서 사용한다. 1. 입력받기 import sys from collections import deque input = sys.stdin.readline .. 2023. 5. 12.
[파이썬] 백준 1759: 암호만들기 (골드5) [파이썬] 백준 1759: 암호만들기 (골드5) 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 문제 풀이 0. 방향성 생각 딱 보면 브루트포스/백트래킹 주어진 조건인 개수, 오름차순을 만족하는 문자열을 탐색하면 된다. 문자열의 수가 충분히 작아서 잘 조합해서 풀 수도 있는데 itertools에서 조합을 써서 풀기 1. 입력 받기 from itertools import combinations l,c = map(int,input().split()) word = list(input().split()) temp = li.. 2023. 5. 11.
[파이썬] 백준 7576,7579 : 토마토 (골드5) [파이썬] 백준 7576 ,7579: 토마토 (골드5) 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 문제 풀이 0. 방향성 생각 최단거리 문제라서 BFS로 접근. 마지막 출력하는 부분만 조심하면 별 다른 조건도 없다. 1. 입력 import sys from collections import deque input = sys.stdin.readline w,h = map(int,input().split()) arr = [] q = deque() for i in range(h): s = list(.. 2023. 5. 10.
[파이썬] 백준 10026 : 적록색약 (골드5) [파이썬] 백준 10026 : 적록색약 (골드5) 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 문제 오답 n = int(input()) arr= [] for i in range(n): arr.append(list(input()) def dfs(x,y,color): if x=n : return 0 if arr[y][x] == color: arr[y][x] = 0 return 1+dfs(x-1,y,color)+dfs(x+1,y,color)+dfs(x,y-1,color)+dfs(x,y+1,color) re.. 2023. 5. 10.