목록파이썬 (140)
홍우진의 개발 일기장
문제 링크 https://www.acmicpc.net/problem/13015 13015번: 별 찍기 - 23 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 풀이 코드 n = int(input()) for i in range(1, n + 1): if i == 1 or i == 2 * n: print("*" * n + " " * (2 * (n - 1) - 1) + "*" * n) elif i != n: print(" " * (i - 1) + "*" + " " * (n - 2) + "*" + " " * (2 * (n - i) - 1) + "*" + " " * (n - 2) + "*") else: print(" " * (i - 1) + "*" + " " * (n - 2) + ..
문제 링크 https://www.acmicpc.net/problem/2485 2485번: 가로수 첫째 줄에는 이미 심어져 있는 가로수의 수를 나타내는 하나의 정수 N이 주어진다(3 ≤ N ≤ 100,000). 둘째 줄부터 N개의 줄에는 각 줄마다 심어져 있는 가로수의 위치가 양의 정수로 주어지며, 가 www.acmicpc.net 풀이 코드 import sys from math import gcd N = int(sys.stdin.readline()) a = int(sys.stdin.readline()) arr = [] for i in range(N-1): num = int(sys.stdin.readline()) arr.append(num - a) a = num g = arr[0] for j in range..
문제 링크 https://www.acmicpc.net/problem/11508 11508번: 2+1 세일 KSG 편의점에서는 과일우유, 드링킹요구르트 등의 유제품을 '2+1 세일'하는 행사를 하고 있습니다. KSG 편의점에서 유제품 3개를 한 번에 산다면 그중에서 가장 싼 것은 무료로 지불하고 나머지 두 www.acmicpc.net 풀이 코드 n = int(input()) c = [] for i in range(n): c.append(int(input())) c.sort(reverse = True) result = 0 for i in range(2,len(c),3): result += c[i] print(sum(c)-result) 코드 해석 받은 수를 3개 단위로 끊은 뒤 각각 세번째로 오는 수를 뺀 나..
문제 링크 https://www.acmicpc.net/problem/5555 5555번: 반지 당신은 N개의 반지를 가지고 있다. 각각의 반지는 대문자 10 문자로 이루어진 문자열이 새겨져 있다. 반지는 문자열의 시작과 끝이 연결된 형태로 문자가 새겨져 있다. 반지에 각인된 문자열을 www.acmicpc.net 풀이 코드 find_string = input() N = int(input()) string_ring_count = 0 for ring_index in range(N): ring = input() ring += ring if ring.find(find_string) != -1: string_ring_count += 1 print(string_ring_count) 코드 해석 반지에 새겨진 문자열을 ..
문제 링크 https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 풀이 코드 score = [] for i in range(8): score.append(int(input())) temp = [] answer = 0 for i in range(5): answer += max(score) temp.append(score.index(max(score)) + 1) score[score.index(max(score))] = -1 temp.sort() ..
문제 링크 https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 풀이 코드 import sys input = sys.stdin.readline n, k = map(int, input().split()) s = [] for i in range(n): s.append(list(map(int, input().split()))) s.sort(key=lambda x : (-x[1], -x[2], -x[3])) for i in range(..
문제 링크 https://www.acmicpc.net/problem/3049 3049번: 다각형의 대각선 세 대각선이 한 점에서 만나지 않는 볼록 N각형이 주어졌을 때, 대각선의 교차점의 개수를 세는 프로그램을 작성하시오. 아래 그림은 위의 조건을 만족하는 한 육각형의 교차점 그림이다. 모든 www.acmicpc.net 풀이 코드 n = int(input()) print(int(n*(n-1)*(n-2)*(n-3)/24)) 코드 해석 사각형을 몇 개 만들 수 있는지 알면 대각선들의 꼭짓점의 총개수도 구할 수 있다. n개의 꼭지점 중에 4개의 꼭짓점을 순서 없이 고르는 연산은 n*(n-1)*(n-2)*(n-3)/24이다.
문제 링크 https://www.acmicpc.net/problem/9656 9656번: 돌 게임 2 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 풀이 코드 n = int(input()) print("CY" if n % 2 else "SK") 코드 해석 짝수면 SK 홀수면 CY를 출력한다.