문제 출처 (BRONZE Ⅲ)https://www.acmicpc.net/problem/34115 풀이1부터 N까지의 카드가 각각 두 장씩 있다.index 함수를 활용하면 가장 앞에 있는 인덱스가 출력이 되니첫 번째 카드의 인덱스를 firstNum 변수에 저장한 뒤, 0부터 해당 인덱스까지 빈 숫자로 채워두는 작업을 했다.(나 같은 경우는 숫자 0으로 채웠다.)그 상태에서 두 번째 카드의 인덱스를 lastNum에 저장했다.마지막으로 두 카드의 인덱스의 차이에 -1을 하면 두 카드 사이에 있는 카드의 개수 k를 구할 수가 있다.문제에서는 k 사이 카드 수 중 가장 큰 값을 요구하니 max를 활용했다. 코드N = int(input())X = list(map(int, input().spli..
문제 출처 (BRONZE Ⅲ)https://www.acmicpc.net/problem/34027 풀이주어진 N에 0.5를 제곱한 값에 1로 나눈 나머지가 0이라면 제곱수,그렇지 않다면 제곱수가 아니라는 것을 알 수 있다. 코드T = int(input())for _ in range(T): N = int(input()) if (N ** 0.5) % 1 == 0: print(1) else: print(0)
문제 출처 (BRONZE Ⅲ)https://www.acmicpc.net/problem/34032 풀이먼저 주어지는 팀원의 수의 절반이 몇 명인지 알아내기 위해 2로 나눈 몫을 half 변수에 저장했다.(만약 팀원의 수가 홀수라면 half 변수에 추가적으로 1을 더해줘야 한다.)count 함수를 사용하여 /gg 명령어를 입력한 팀원이 half 보다 이상인지 확인 후팀이 항복을 할 수 있다면 Yes를, 그렇지 않다면 No를 출력하였다. 코드N = int(input())S = list(input())half = N // 2if N % 2 != 0: half += 1if S.count("O") >= half: print("Yes")else: print("No")
문제 출처 (BRONZE Ⅴ)https://www.acmicpc.net/problem/33515 풀이형진이가 문제를 푸는 데까지 필요한 최대 시간을 구하려면다른 두 팀원의 문제 푸는 시간 중 가장 작은 시간을 찾으면 된다.min() 함수를 사용하여 결과를 출력하였다. 코드T1, T2 = map(int, input().split())print(min(T1, T2))
문제 출처 (BRONZE Ⅱ)https://www.acmicpc.net/problem/22113 풀이창영이가 이용하는 버스의 번호를 시작점과 끝점을 이용하면 된다.문제의 예제 속 3 1 2의 의미는 (3 → 1), (1 → 2) 순서대로 이동한 것이다.버스의 환승 요금을 2차원 배열로 저장한 뒤 시작점과 끝점을 통해 해당 요금을 더해주고 출력하면 된다. 코드N, M = map(int, input().split())bus_number = list(map(int, input().split()))bus_cost = [list(map(int, input().split())) for _ in range(N)]result = 0for i in range(M - 1): S, E = bus_numb..
문제 출처 (BRONZE Ⅰ)https://www.acmicpc.net/problem/9339 풀이대회 참가자들의 기록을 for 문으로 순서대로 입력받으면서 기록을 분으로 통일시키는 작업을 먼저 했다.그리고 학원 수강생인지, 기록이 6시간 이하인지 if 문에 and를 사용하여 확인했다.인증서를 받는 학생의 수를 +1 해주고 기록이 좋은 수강생의 참가 번호와 기록을 경신해 줬다. 코드T = int(input())for _ in range(T): K = int(input()) # 수강생 수 K_Number = list(map(int, input().split())) # 수강생의 참가 번호 N = int(input()) # 대회 참가자 수 record_time = 14..