목록전체 글 (97)
꾸준히 합시다
www.acmicpc.net/problem/18258 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 문제 유형: 자료 구조, 큐 # Solution 1 - 시간 초과 import sys input = sys.stdin.readline arr = [] for _ in range(int(input())): cmd = list(map(str, input().split())) if cmd[0] == "push": arr.append(int(cmd[1])) elif cmd[0] == "pop"..
www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 유형: 구현, 문자열 # Solution 1 - 정돈되기 전 소스 코드 a = input() a = a.upper() new = {} for i in range(len(a)): if a[i] in new: new[a[i]] += 1 else: new[a[i]] = 1 lst = list(new.values()) lst.sort(reverse=True) if len(new) == 1: print(a[0]) elif lst[0] == lst[..
www.acmicpc.net/problem/9506 9506번: 약수들의 합 어떤 숫자 n이 자신을 제외한 모든 약수들의 합과 같으면, 그 수를 완전수라고 한다. 예를 들어 6은 6 = 1 + 2 + 3 으로 완전수이다. n이 완전수인지 아닌지 판단해주는 프로그램을 작성하라. www.acmicpc.net 문제 유형: 수학, 정수론 # Solution 1 while True: n = int(input()) if n == -1: # 입력 값이 -1이면 반복문 종료 break; arr = [] for i in range(1, n): if n % i == 0: arr.append(i) if sum(arr) == n: print(n, " = ", " + ".join(str(i) for i in arr), sep=..
www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 문제 유형: 자료 구조, 문자열, 스택 # Solution 1 for _ in range(int(input())): a = list(input()) s = 0 for i in a: if i == "(": s += 1 elif i == ")": s -= 1 if s 0: print("NO") elif s == 0: print("Y..