Algorithm/BOJ(42)
-
[python 파이썬] 백준 2776번 암기왕
www.acmicpc.net/problem/2776 2776번: 암기왕 연종이는 엄청난 기억력을 가지고 있다. 그래서 하루 동안 본 정수들을 모두 기억 할 수 있다. 하지만 이를 믿을 수 없는 동규는 그의 기억력을 시험해 보기로 한다. 동규는 연종을 따라 다니며, www.acmicpc.net 1. 첫번째 코드 - 틀림 처음의 테스트케이스 개수 입력을 처음에 아무렇지 않게 여기지않아 틀렸다. 테스트케이스 입력 개수도 신경쓰기! import sys # t = int(input()) # n = int(input()) t = int(sys.stdin.readline()) n = int(sys.stdin.readline()) # memo1 = list(map(int,input().split())) memo1 = ..
2021.01.29 -
[python 파이썬] 백준 10951번 A+B-4
www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 이 문제는 종료조건이 명확히 존재하지 않았다. 찾아보니 몇개의 테스트 케이스가 주어졌는지 알 수 없는 경우 EOF 까지 받으면 된다고 한다. 따라서 예외처리를 해주면 이문제를 해결할 수 있다! import sys while True: try: # a,b = map(int,input().split()) a,b = map(int,sys.stdin.readline().split()) print(a+b) except : break gururuglasses.tistory.com/46 백준 10951( A+B-4 ) [ pytho..
2021.01.28 -
[python 파이썬] 백준 1431번 시리얼 번호
1431번: 시리얼 번호 첫째 줄에 기타의 개수 N이 주어진다. N은 1,000보다 작거나 같다. 둘째 줄부터 N개의 줄에 시리얼 번호가 하나씩 주어진다. 시리얼 번호의 길이는 최대 50이고, 알파벳 대문자 또는 숫자로만 이루 www.acmicpc.net 이 문제는 파이썬의 정렬기능을 잘 활용하면 해결할 수 있는 문제였다. (아직 기능을 알고리즘 문제에 적용하기엔 많은 연습이 필요함을 느꼈다.) 조건에 맞게 key를 설정해주면 되었다. 시리얼 번호 중 숫자의 합을 구해야하는 조건도 있기에 미리 그 값을 구하면 편했다. 전처리 작업이 끝나면 sort의 key를 이용해서 정렬하도록 한다. key=lambda x : (정렬조건 , , ) 같은 방식으로 사용한다. n = int(input()) guitar=[]..
2021.01.28 -
[python 파이썬] 백준 11652번 카드
11652번: 카드 준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지 www.acmicpc.net 1. 문제를 제대로 읽지 않았다. 최대값이 여러개일 경우 작은 수를 출력하라는 문구를 놓쳤다. 2. 두번째 시도 - collections 모듈의 Counter클래스를 사용한 방법 - 틀림 from collections import Counter # collections모듈의 Counter 클래스 import sys N = int(sys.stdin.readline()) numList=[int(sys.stdin.readline()) for _ in range(N..
2021.01.28 -
[python 파이썬] 백준 11021번 A+B-7
11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 이 문제는 출력 형식때문에 틀렸다. 나는 보통 print('A:', a, 'B:', b) 이렇게 컴마로 출력할 문자열과 변수를 합쳐쓰는데 띄어쓰기가 잘 안먹혀 이문제에서 틀렸다. 앞으로 출력형식을 엄격하게 맞춰줘야 할 경우에 아래처럼 쓰자 import sys t = int(input()) for i in range(t): a,b = map(int,sys.stdin.readline().split()) print('Case #%d: %d'%(i+1,a+b))
2021.01.28 -
[python 파이썬] 백준 15552번 빠른 A+B
15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 파이썬에서 입력할 때 input()을 주로 쓰지만 여러줄 입력받거나 출력할 때 시간초과가 날 수 있어 sys.stdin.readline을 사용하기를 권고한다! sys.stdin.readline을 주로 사용하고 연습 많이 하자! (코랩에선 sys.stdin.readline이게 안돌아가는 듯 한데 잘모르겠다.) import sys T = int(input()) for i in range(T): a,b=map(int,sys.stdin.readline().split()) print(a+b)
2021.01.28