29. 네 수(10824)
문제.네 자연수 A, B, C, D가 주어진다. 이때, A와 B를 붙인 수와 C와 D를 붙인 수의 합을 구하는 프로그램을 작성하시오.두 수 A와 B를 합치는 것은 A의 뒤에 B를 붙이는 것을 의미한다. 즉, 20과 30을 붙이면 2030이 된다.답:a, b, c, d = input().split()a = a+bc = c+dprint(int(a)+int(c))너무 쉽다.일단 input을 a, b, c, d 다 받아준다. 그냥 받으면 문자열로 받는다는 것을 기억하자.이후a에 a와 b를 합치게 만든다. (더 정확히 표현하자면 "붙인다"가 된다.) 어차피 문자열로 취급을 하기에, 예를 들어 a가 10이고 b가 20이라면 10과 20을 문자열처럼 합치게 되어서 1020이 된다.c도 똑같다.이후 다 합쳐진 문자열 ..
2024. 9. 22.
27. 문자열 분석(10820), 단어 길이 재기(2743)
문제. 문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오.각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있다.첫째 줄부터 N번째 줄까지 문자열이 주어진다. (1 ≤ N ≤ 100) 문자열의 길이는 100을 넘지 않는다.첫째 줄부터 N번째 줄까지 각각의 문자열에 대해서 소문자, 대문자, 숫자, 공백의 개수를 공백으로 구분해 출력한다.답:while True: try: #예외 구문 string = input() answer = [0] * 4 for s in string: if s.islower(): answer[0] += 1 ..
2024. 9. 15.
24. 오등큰수(17299)
문제. 크기가 N인 수열 A = A1, A2, ..., AN이 있다. 수열의 각 원소 Ai에 대해서 오등큰수 NGF(i)를 구하려고 한다.Ai가 수열 A에서 등장한 횟수를 F(Ai)라고 했을 때, Ai의 오등큰수는 오른쪽에 있으면서 수열 A에서 등장한 횟수가 F(Ai)보다 큰 수 중에서 가장 왼쪽에 있는 수를 의미한다. 그러한 수가 없는 경우에 오등큰수는 -1이다.예를 들어, A = [1, 1, 2, 3, 4, 2, 1]인 경우 F(1) = 3, F(2) = 2, F(3) = 1, F(4) = 1이다. A1의 오른쪽에 있으면서 등장한 횟수가 3보다 큰 수는 없기 때문에, NGF(1) = -1이다. A3의 경우에는 A7이 오른쪽에 있으면서 F(A3=2) 답:from collections import Cou..
2024. 9. 12.