[백준][Python] 10250번 ACM호텔 - 코팩
·
백준/구현
https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 풀이 변수 정리 H: 층의 수 W: 방의 개수 N: 몇번 째 손님인지 손님의 순번이 층의 개수만큼인지 아닌지에 따라 if문을 구성하여 문제를 풀어주었습니다. 만일 층의 개수가 10층인 호텔이 주어졌습니다. if 손님의 순번이 10의 배수일 경우. 호실의 층은 최상층에 해당합니다. => xx 호실의 숫자는 층의 개수를 손님의 순번으로 나눈 값의 몫에 해당합니다. => yy if 손님의 ..
[백준][Python] 10797번 10부제 - 코팩
·
백준/구현
https://www.acmicpc.net/problem/10797 10797번: 10부제 서울시는 6월 1일부터 교통 혼잡을 막기 위해서 자동차 10부제를 시행한다. 자동차 10부제는 자동차 번호의 일의 자리 숫자와 날짜의 일의 자리 숫자가 일치하면 해당 자동차의 운행을 금지하는 www.acmicpc.net 풀이 슬라이싱을 이용해서 문제를 풀어주었습니다. # 10797번 10부제 target = input() nums = input().split() ans = 0 for i in nums: if i[-1] == target: ans += 1 print(ans) 출력결과
[Python] 알고리즘 풀이를 위해서 시간을 측정하는 법
·
Dev Lang/Python
1. time.process_time() 이용 2. timeit 이용 1. time.prcess_time() 시간측정 단위는 초(second)입니다. import time from datetime import timedelta start = time.process_time() # 본인이 시간을 측정하고 싶은 코드를 집어넣는 곳 ans = 0 for _ in range(1000000): ans += 1 end = time.process_time() print("seconds: ", end - start) print("h:m:s : ", timedelta(seconds=end-start)) start 변수에 시간 측정 시작점을 저장해준 뒤 end 변수에 시간 측정 종료지점을 저장해줍니다. 그 이후에는 본인이..
[백준][Python] 1427번 소트인사이드 - 파이썬
·
백준/문자열 정렬
https://www.acmicpc.net/problem/1427 1427번: 소트인사이드 첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 풀이 리스트 메서드인 .sort()의 파라미터인 reverse에 True를 주면 내림차순으로 정렬됩니다. # 1427번 소트인사이드 words = list(input()) words.sort(reverse = True) print("".join(words)) 출력결과
[백준] 4948번 베르트랑 공준 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 풀이 주어진 입력값보다 크거나 입력값의 2배보다 작거나 같은 소수들의 개수를 계산하는 문제입니다. 에라토스테네스의 체 알고리즘을 이용하여서 1에서 입력값의 최댓값인 123456의 2배인 246912까지의 숫자 중에서 소수들을 찾아줍니다. 주어지는 값에 따라 소수의 개수를 계산해주면 됩니다. 에라토스테네스의 체(소수 찾기 알고리즘): https://sunghyun98.tistory.com/3..
[백준] 1475번 방 번호 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 풀이 방 번호를 꾸미기 위해 플라스틱 숫자 꾸러미를 사기로 했습니다. 이 꾸러미에는 숫자가 0~9까지 있습니다. 몇 개의 꾸러미를 구매해야 다솜이가 주어진 방 번호를 완성할 수 있는지가 문제입니다. 주의할 점은 6은 거꾸로 뒤집어 9로 사용할 수 있으며 반대의 경우도 가능합니다. 각 숫자를 count에 집어넣어서 개수를 파악한 뒤 꾸러미의 개수를 계산했습니다. 다만 6과 9의 경우는 같이 더해주어서 계산해주었습니다. 예를 들어 699 라는 방 번호가 주어졌다면 필요한 꾸러미는 2개입니다. 699..
[백준] 14425번 문자열 집합 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/14425 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 풀이 시간초과에 주의해서 문제를 풀어줘야합니다. 주어지는 N개의 문자열을 리스트가 아닌 집합에 넣어서 처리해야합니다. 리스트는 순열 순회를 해서 요소를 찾지만 집합은 해시테이블을 이용해서 요소를 찾기에 소모되는 시간의 차이가 있습니다. 집합을 통해서 검색하는 과정은 시간복잡도가 O(1)이 소모되지만, 리스트는 O(N)이 소모됩니다. # 14425 문자열 집합 imp..
[백준] 15904번 UCPC는 무엇의 약자일까? - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/15904 15904번: UCPC는 무엇의 약자일까? 첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는 www.acmicpc.net 풀이 # check는 UCPC로 축약 할 수 있는 문자열인지를 정하는 불린 변수이다. for i in "UCPC": if i in word: word = word[word.index(i)+1:] else: check = False break UCPC가 주어진 문자열에 속해 있는지와 "축약" 했을 경우 UCPC가 순서대로 나오는지가 중요하다. UCPC의 각 문자를 순서대로 i..
개발자 성현
'파이썬' 태그의 글 목록 (4 Page)