Baby Yoshi Blinking
[파이썬 알고리즘 문제풀이 입문] 탐색&시뮬레이션 - 회문 문자열 검사
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 N개의 문자열 데이터를 입력받아 앞에서 읽을 대나 뒤에서 읽을 때나 같은 경우(회문 문자열)이면 YES를 출력하고 회문 문자열이 아니면 NO를 출력하는 프로그램을 작성한다. 단, 회문을 검사할 때 대소문자를 구분하지 않습니다. 풀이 • 내 풀이 import sys input = sys.stdin.readline N = int(input()) for i in range(N): data = input().rstrip().lower() idx = len(data)-1 count = 0 for j in range(len(data)//2): if data[j] == data[idx]: count += 1 idx -= 1 else: print..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 점수계산
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 OX 문제는 맞거나 틀린 두 경우의 답을 가지는 문제를 말한다. 여러 개의 OX 문제로 만들어진 시험에서 연속적으로 답을 맞히는 경우에는 가산점을 주기 위해서 다음과 같이 점수 계산을 하기로 했다. 1번 문제가 맞는 경우에는 1점으로 계산한다. 앞의 문제에 대해서는 답을 틀리다가 답이 맞는 처음 문제는 1점으로 계산한다. 또한, 연속으로 문제의 답이 맞는 경우에서 두 번째 문제는 2점, 세 번째 문제는 3점, ..., K 번째 문제는 K점으로 계산한다. 틀린 문제는 0점으로 계산한다. 시험 문제의 채점 결과가 주어졌을 때, 총 점수를 계산하는 프로그램을 작성하시오. 풀이 • 내 풀이 (답안이랑 동일했음) import sys inpu..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 주사위 게임
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 1에서 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 규칙(1) 같은 눈이 3개가 나오면 10,000원 + (같은 눈) * 1,000원의 상금을 받게 된다. 규칙(2) 같은 눈이 2개만 나오는 경우에는 1,000원 + (같은 눈) * 100원의 상금을 받게 된다. 규칙(3) 모두 다른 눈이 나우는 경우에는 (그 중 가장 큰 눈) * 100원의 상금을 받게 된다. N명이 주사위 게임에 참여했을 때, 가장 많은 상금을 받은 사람의 상금을 출력하는 프로그램을 작성하시오. 풀이 • 답안 : Python import sys input = sys.stdin.readline N = int(inpu..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 뒤집은 소수
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 N개의 자연수가 입력되면 각 자연수를 뒤집은 후 그 뒤집은 수가 소수이면 그 수를 출력하는 프로그램을 작성하세요.••• 풀이 • 내 풀이 import sys input = sys.stdin.readline N = int(input()) nums = list(input().split()) def reverse(x): result = '' for i in range(0, len(x))[::-1]: result += x[i] return int(result) def isPrime(x): if x == 1: return 0 for i in range(2, x): if x%i == 0: return 0 else: return x for i ..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 소수의 개수 (에라토스테네스 체)
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 자연수 N이 입력되면 1부터 N까지의 소수의 개수를 출력하는 프로그램을 작성하세요. 풀이 • 내 풀이 import sys input = sys.stdin.readline N = int(input()) sosu = list() def check_sosu(n): for i in range(2, n): if n%i == 0: return False for j in range(2, N): if check_sosu(j) == False: continue else: sosu.append(j) print(len(sosu)) • 답안 : Python import sys input = sys.stdin.readline N = int(input())..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 자릿수의 합
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 N개의 자연수가 입력되면 각 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수를 출력하게 하는 프로그램을 작성하세요. (자릿수의 합을 구하는 함수 def digit_sum(x)를 꼭 작성해서 프로그래밍 하세요.) 풀이 • 내 풀이 import sys input = sys.stdin.readline N = int(input()) nums = list(input().split()) result = list() def digit_sum(x): count = 0 for j in nums[x]: count += int(j) result.append(count) for i in range(N): digit_sum(i) print(nums..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 정다면체
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 두 개의 정N면체와 정M면체의 주사위를 던져서 나올 수 있는 눈의 합 중 가장 확률이 높은 숫자를 출력하는 프로그램을 작성하세요. (정답이 여러개일 경우 오름차순으로 출력합니다.) 풀이 • 내 풀이 import sys input = sys.stdin.readline N, M = map(int, input().split()) add_nums = [0] * (N+M+1) for i in range(1, N+1): for j in range(1, M+1): value = i+j add_nums[value] += 1 for k in range(len(add_nums)): if add_nums[k] == max(add_nums): print..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - 대표값
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 N명의 학생의 수학 점수가 주어집니다. N명의 학생들의 평균(소수 첫째자리 반올림)을 구하고, 평균에 가장 가까운 학생은 몇 번째 학생인지 출력하는 프로그램을 작성하세요. (평균과 가장 가까운 점수가 여러개 → 먼저 점수가 높은 학생의 번호를 답으로 하고,) (높은 점수를 가진 학생이 여러명 → 학생 번호가 빠른 학생의 번호를 답으로 합니다.) 풀이 from itertools import combinations import sys input = sys.stdin.readline N = int(input()) math_grades = list(map(int, input().split())) avg = round(sum(math_gra..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - K번째 큰 수
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 1~100 자연수가 적힌 N장의 카드를 갖고 있습니다. (같은 숫자의 카드가 여러 장 있을 수 있다.) 이 중에서 3장을 뽑아 합한 값을 기록하려고 합니다. 3장을 뽑을 수 있는 모든 경우의 수를 기록합니다. 기록한 값 중 K번째로 큰 수를 출력하는 프로그램을 작성하세요. 풀이 • 내 풀이 from itertools import combinations import sys input = sys.stdin.readline N, K = map(int, input().split()) cards = list(map(int, input().split())) cards.sort(reverse = True) three = list(combinat..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - K번째 수
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 N개의 숫자로 이루어진 숫자열이 주어지면 해당 숫자열 중에서 s번째 부터 e번째 까지의 수를 오름차순으로 정렬했을 때, k번째로 나타나는 숫자를 출력하는 프로그램을 작성하세요. 풀이 • 내 풀이 import sys input = sys.stdin.readline T = int(input()) for i in range(T): result = list() N, s, e, k = map(int, input().split()) nums = list(map(int, input().split())) result = nums[s-1:e] result.sort() print(f"#{i+1} {result[k-1]}") • 답안 T = int(i..
[파이썬 알고리즘 문제풀이 입문] 코드 구현력 기르기 - K번째 약수
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
*문제 본문은 강의 내용과 관련되어 있어 자세하게 적지 않았습니다. 문제 두 개의 자연수 N과 K가 주어졌을 때, N의 약수들 중 K번째로 작은 수를 출력하는 프로그램을 작성하시오. 풀이 • 내 풀이 import sys input = sys.stdin.readline N, K = map(int, input().split()) nums = list() for i in range(1, N+1): if N%i == 0: nums.append(i) if len(nums) < K: answer = -1 else: answer = nums[K-1] print(answer) • 답안 N, K = map(int, input().split()) cnt = 0 for i in range(1, N+1): if N%i == ..
백준[2178] - 미로탐색
·
💻 코딩테스트/백준
문제 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 작성한 코드 from collections import deque import sys input = sys.stdin.readline N, M = map(int, input().split()) graph = [list(map(int, input().rstrip())) for _ in range(N)] dx = [0, 0, -1, 1] dy = [-1, 1, 0, 0] def bfs(x, y): q = deque() q.append((x, y)) while q: x, y = q.poplef..
// 코드 블럭 복사