[백준] 10866번 덱 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 풀이 자료구조 덱의 기능을 구현해볼 수 있는 문제입니다. 덱의 메서드 공부와 함께 풀어주시면 좋겠습니다. # 10866번 덱 from collections import deque import sys n = int(input()) queue = deque() for _ in range(n): li = sys.stdin.readline().rstrip().split() order = ..
[백준] 2164번 카드2 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 풀이 리스트를 사용하면 시간초과가 뜨기에 자료구조 중 하나인 덱을 쓰셔야합니다. # 2164번 카드2 from collections import deque n = int(input()) cards = deque(list(range(1,n+1))) while(len(cards) >1): cards.popleft() move = cards.popleft() cards.append(move) print..
[백준] 4153번 직각삼각형 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/4153 4153번: 직각삼각형 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. www.acmicpc.net 풀이 피타고라스의 정리를 안다면 문제를 푸는데 어려움이 없을 겁니다. 가장 큰 수를 찾는 방법은 max()나 sort()를 이용하여 푸시면 좋을 것 같습니다. # 4153번 직각 삼각형 import sys while 1: li = list(map(int, sys.stdin.readline().split())) if li == [0,0,0]: break li.sort() # 정렬을 통해서 리스트의 마지막 인덱스 자리..
[백준] 1181번 단어 정렬 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 풀이 정렬을 두 번 해주었습니다. 사전순으로 오름차순으로 정렬을 해준 뒤에 길이를 기준으로 정렬을 추가로 진행해주었습니다. 1. 오름차순으로 정렬(문제의 테스트 케이스 기준) but cannot hesitate i im it more no wait wont yours 2. 오름차순에 이어서 길이 기준으로 정렬 i im it no but more wait wont yours cannot ..
[백준] 10814번 나이순 정렬 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 풀이 참고자료: https://sunghyun98.tistory.com/60?category=956773 sort()메서드의 파라미터 값을 알 수 있는 문제입니다.(sorted()도 사용가능) sort() 메서드의 파라미터는 key와 reverse가 존재합니다. reverse는 숫자를 내림차순으로 정렬해주는 기능을 합니다. li=[1, 2, 3, 4, 5] li.sort(reverse=True) pri..
[백준] 2751번 수 정렬하기 2 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 풀이 리스트의 메서드 중 하나인 sort()를 이용해서 문제를 풀어주었습니다. 시간을 축소시키기 위해 sys.stdin.readline() 와 sys.stdout.write()를 사용해주었습니다. # 2751번 수 정렬하기 2 import sys input = sys.stdin.readline n = int(input()) s= [int(input()) for _ in range(n)]..
[백준] 17219번 비밀번호 찾기 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net 풀이 딕셔너리를 사용해서 문제를 풀어주었습니다. 입력값이 많아서 sys.stdin.readline()도 사용해주었습니다. # 17219번 비밀번호 찾기 import sys n, m = map(int, input().split()) reposi = {} for _ in range(n): site, password = sys.stdin.readline().rstrip()..
[백준] 11723번 집합 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/11723 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net 풀이 집합에 대한 메서드를 정리해 볼 수 있는 문제입니다. 심화느낌으로 discard() 와 remove()의 차이에 대해서 알 수 있습니다. remove()는 집합안에 삭제할 요소가 존재하지않으면 keyerror가 일어나지만 discard()는 삭제할 요소의 존재유무와 상관없이 에러가 일어나지않습니다. # 11723번 집합 import sys n = int(input()) a = set() for _ in range(n): ord..
개발자 성현
'백준' 카테고리의 글 목록 (17 Page)