백준 93

백준 3052번 나머지 파이썬

https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net dt = 42 # default list1 = [] for i in range(10): x = int(input()) list1.append(x%dt) print(len(set(list1))) 문제에서 나누는 수를 42로 고정을 해서 변수에 저장해 놓고 , 나머지들을 리스트에 넣고 튜플로 만들어서 계산을 하였다.

BOJ/Python 2021.10.20

백준 8958번 OX퀴즈 파이썬

https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net x = int(input()) for i in range(x): y = input() cnt = 0 f = 1 for j in range(len(y)): if y[j] == 'O': cnt += f f += 1 else: f = 1 print(cnt) O가 계속 나올시 f에 저장된 수가 1씩 증가하는 코드를 짰고 , 반면 X가 나올시 (else) f = 1로 초기화 하여 계산하..

BOJ/Python 2021.10.17

백준 2577번 숫자의 개수 파이썬

https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net z = int(input())*int(input())*int(input()) for i in range(10): print(str(z).count(str(i))) 첫줄 z = int(input())*int(input())*int(input()) 이부분은 어찌저찌 해보다 된 코드인데 역시 파이썬은 다양하게 써도 컴퓨터가 알아먹는다.

BOJ/Python 2021.10.17

백준 11816번 8진수, 10진수, 16진수 파이썬

https://www.acmicpc.net/problem/11816 11816번: 8진수, 10진수, 16진수 첫째 줄에 X가 주어진다. X는 10진수로 바꿨을 때, 1,000,000보다 작거나 같은 자연수이다. 16진수인 경우 알파벳은 소문자로만 이루어져 있다. www.acmicpc.net x = input() if x[0] == '0' and x[1] == 'x': print(int(x, 16)) elif x[0] == '0' and (x[1] != 'x'): print(int(x, 8)) else: print(int(x)) 파이썬 기본 문법을 이용하면 간단하게 나타낼 수 있다.

BOJ/Python 2021.10.04

백준 10987번 모음의 개수 파이썬

https://www.acmicpc.net/problem/10987 10987번: 모음의 개수 알파벳 소문자로만 이루어진 단어가 주어진다. 이때, 모음(a, e, i, o, u)의 개수를 출력하는 프로그램을 작성하시오. www.acmicpc.net 내 답안 count = 0 vowel = 'aeiou' x = input() for i in range(len(x)): if x[i] in vowel: count += 1 print(count) Review 입력된 String을 하나씩 돌아가면서, vowel에 있는 것이 몇 개인지 count를 해주었습니다.

BOJ/Python 2021.09.02

백준 1357번 뒤집힌 덧셈 파이썬

https://www.acmicpc.net/problem/1357 1357번: 뒤집힌 덧셈 어떤 수 X가 주어졌을 때, X의 모든 자리수가 역순이 된 수를 얻을 수 있다. Rev(X)를 X의 모든 자리수를 역순으로 만드는 함수라고 하자. 예를 들어, X=123일 때, Rev(X) = 321이다. 그리고, X=100일 때, Rev( www.acmicpc.net 코딩을 하다가 최대한 줄일 방법을 생각해 보았다. 처음에는 80B , 70B정도의 길이로 코딩을 했는데 , 한줄로도 표현 할수 있을 것 같아서 한줄로 코딩을 해보았다. print(int(str(sum(map(int , input()[::-1].split())))[::-1])) 한줄로 줄이다가 굳이 sum(list(map(~~))) 이렇게 코딩을 안해..

BOJ/Python 2021.09.02

백준 10871번 X보다 작은 수 파이썬

https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net N, X = map(int, input().split()) A = list(map(int, input().split())) for i in range(N): if A[i] < X: print(A[i], end = ' ') 문제에서 주어진 N, X, A를 전부다 활용하기 위해 for 문으로 list에 접근하도록 코딩을 하였다. 코드 맨 아래줄에 같은 줄, 바로 뒤에 출력하기 위해 e..

BOJ/Python 2021.08.26

백준 1110번 더하기 사이클 파이썬

https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net count = 1 x = int(input()) y = (x%10)*10 + (x//10 + x%10)%10 while x != y: y = (y%10)*10 + (y//10 + y%10)%10 count += 1 print(count) while 문을 사용하여 코딩을 하였다. 사실상 거의 수학 문제에 가까웠다. 아이패드로 어떻게 해야 효율적이게 나올까 끄적이면서 코드를 짠 것 같다.

BOJ/Python 2021.08.26