Data Scientist 옌

매일 발전하는 IT문제해결사

728x90

코딩테스트 35

[백준] 8~9단계: 추가문제

1. [2745] 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다. A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35 N, B = input().split() digits = {"0": 0, "1": 1, "2": 2, "3": 3, "4": 4, "5": 5, "6": 6, "7": 7, "8": 8, "9": 9, "A": 10, "B": 11, "C": 12, "D": 13, "E": 14, "F": 15, "G": 16, "H": 17, "I": 18, "J": 19, "K": 20, "L": 21, "M"..

[백준] 5~7단계: 추가문제

1. [27866] 문자와 문자열 단어 S와 정수 i가 주어졌을 때, S의 i번째 글자를 출력하는 프로그램을 작성하시오. S = input() i = int(input()) S_list = [] for w in S: S_list.append(w) print(S_list[i-1]) 2. [2743] 단어 길이 재기 첫째 줄에 영어 소문자와 대문자로만 이루어진 단어가 주어진다. 단어의 길이는 최대 100이다. S = input() print(len(S)) 3. [9086] 문자열 문자열을 입력으로 주면 문자열의 첫 글자와 마지막 글자를 출력하는 프로그램을 작성하시오. N = int(input()) for _ in range(N): S = input() print(S[0]+S[-1]) 4. [11718] 그대..

[백준] 1~4단계: 추가문제

1. [11382] 꼬마정민 꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례이다! A, B, C = map(int, input().split()) print(A + B + C) 2. [25304] 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것이 맞는지 확인해보려 한다. 영수증에 적힌, 구매한 각 물건의 가격과 개수 구매한 물건들의 총 금액 을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자. total = int(input()) price = 0 for i i..

[백준] 9단계: 2차원 배열

1. [2738] 행렬 덧셈 N*M크기의 두 행렬 A와 B가 주어졌을 때, 두 행렬을 더하는 프로그램을 작성하시오. N, M = map(int, input().split()) matrix_a = [] matrix_b = [] for _ in range(N): matrix_a.append(list(map(int, input().split()))) for _ in range(N): matrix_b.append(list(map(int, input().split()))) for i in range(N): for j in range(M): print(matrix_a[i][j] + matrix_b[i][j], end=' ') print('') 2. [2566] 최댓값 과 같이 9×9 격자판에 쓰여진 81개의 자연수..

[백준] 8단계: 기본 수학2

1. [1978] 소수 찾기 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. n = int(input()) num_list = list(map(int, input().split())) prime_cnt = 0 for i in num_list: cnt = 0 if i == 1: # 1은 소수가 아니기 때문에 건너띔 continue for j in range(2, i+1): if i % j == 0: cnt += 1 if cnt == 1: prime_cnt += 1 print(prime_cnt) Comment: for문으로 조건에 맞는 list 인자를 pop하겠다는 발상은 앞으로 폐기 처리할 것, 소수 수를 새는 것은 어떻게 가능했는데, 소수 배열을 내보내는 방법은 아직 고민..

[백준] 7단계: 기본 수학1까지 추가 문제 수정 업로드

오늘따라 시간이 좀 남아서 추가된 문제를 풀었습니다. 1. [3003] 킹, 퀸, 룩, 비숍, 나이트, 폰 - 1단계: 입출력과 사칙연산 동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다. 체스판의 먼지를 털어내고 걸레로 닦으니 그럭저럭 쓸만한 체스판이 되었다. 하지만, 검정색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다. 체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다. 동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오. a = list(map(int, input().split())) correct = [1, 1, 2, 2, 2, ..

신입 취업 준비 가이드 4탄: 인적성/AI역량검사/코딩테스트

3탄에서 서류 합격한다는 가정 하에 기다리시면서 준비할 인적성/AI/코딩테스트에 대하여 다루겠다고 말씀드렸지만, 사실 떨어질 수도 있잖아요? 그래서 자기소개서를 계속 넣으시는 것이 중요합니다. 이번 파트에서는 취준생이 자기소개서를 꾸준히 작성하여 지원하면서 남는 시간에 해야할 것들을 알려드릴게요. 3탄은 아래 링크에서 확인하실 수 있습니다. 신입 취업 준비 가이드 3탄: 자기소개서 작성법 앞선 글인 2탄 경험정리까지 확인하셨다면 자기소개서가 거의 완성되었어요. 코 앞입니다! 이제는 경험 정리를 바탕으로 더 자세하게 자기소개서를 작성하는 법과 마스터 자소서 준비 방법에 a-brand-new-life.tistory.com 1. 인적성 인성은 대충 100여개의 문항을 주고 본인과 가까운 문항을 선택하는 그런 ..

[백준] 7단계: 문자열

1. [11654] 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. print(ord(input())) # 숫자를 ASCII로 바꿔주는 함수 # chr() 2. [11720] 숫자의 합 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. n = map(int, input()) num = input() sum = 0 for i in num: sum += int(i) print(sum) 3. [10809] 알파벳 찾기 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력..

[백준] 6단계: 함수

1. [10818] 최소, 최대 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. A = map(int, input()) B = list(map(int, input().split())) print(min(B), max(B)) 2. [4673] 셀프넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, 이 수를 시작해서 n, d(n), d(d(n)), d(d(d(n))), ...과 같은 무한 수열을 만들 수 있다. 예를 들어, 33으로 시작한다면 다음 수는 33 + 3 + 3 = 39..

[백준] 5단계: 1차원 배열

매일 한 문제만 풀려는데 그마저 어렵네요. 늦더라도 하기~! 1. [10818] 최소, 최대 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. A = map(int, input()) B = list(map(int, input().split())) print(min(B), max(B)) 2. [2562] 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다. nu..

신입 취업 준비 가이드 개요

안녕하세요. 지난 취업 실패기에서 취업 준비와 관련해 잘 준비했던 것들을 정리해서 업로드하겠다고 말씀드렸었어요. 부족한 점이 있더라도 모든 프로세스를 다루어 정리하여 가이드를 만드는 것이 좋겠다고 생각하여 제가 생각하는 취업 준비 프로세스를 정리하여 공유합니다. 저의 실패기는 아래 글에서 확인하실 수 있습니다. 데이터 사이언티스트 취업 실패기 (2021년 하반기) 작년에 하반기 취업을 위해 동분서주했는데 실패했습니다. 올해 상반기에 더 잘 준비하기 위해서 지난 취준의 문제점을 생각하고 정리한 계획을 올려봅니다. 0. 퇴사 저는 학사는 비전공이고 데 a-brand-new-life.tistory.com 제가 이렇게 가이드 형식으로 만드는 이유는 최근에 코로나 시기의 대학생 분들과 이야기한 경험 덕분입니다. ..

[백준] 4단계: while문

1. [10952] A+B-5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다. while True: A, B = map(int, input().split()) if A == 0 and B == 0: break else: print(A+B) 2. [10951] A+B-4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) while True: try: A,..

728x90