백준 2292 벌집 - python 출처 : https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 풀이: a = int(input()) cnt = 0 while True: if a 코딩테스트/기초 2022.01.06
백준 1712 손익분기점 - python 출처: https://www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www.acmicpc.net 풀이 : a,b,c = map(int, input().split()) if (c-b) n = 11 코딩테스트/기초 2022.01.06
백준 1011 Fly me to the Alpha Centauri - python 출처 : https://www.acmicpc.net/problem/1011 1011번: Fly me to the Alpha Centauri 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행 www.acmicpc.net 풀이 : T = int(input()) for i in ragne(T): x, y = map(int, input().split()) d = y - x n = 0 while True : if d k_2 -> ....->k_n -> y로 가는 문제이다. 그때 이 n이 몇인지를 물어보는 문제라고 이해하면 좋다. 근데 조건은 k_1 과 k_n은 각각 .. 코딩테스트 2022.01.06
백준 2941 크로아티아 알파벳 - python 출처 :https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net a = input() croa = ['c=','c-','dz=','d-','lj', 'nj', 's=', 'z='] cnt = 0 for i in croa: a =a.replace(i, '*') print(len(a)) 풀이 : replace를 떠올리면 된다. 그냥 늘 하던대로 받아와서 replace로 바꾼 부분은 *표시해준다. 코딩테스트/기초 2022.01.03
백준 5622 다이얼 - python 출처: https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 풀이 : a = input() group = ['ABC','DEF','GHI','JKL','MNO','PQRS','TUV','WXYZ'] ans = 0 for i in a: for j in group: if i in j: ans += group.index(j) ans = 3*len(a) + ans print(ans) 풀이가 좀 다른 사람들이랑 다를 거 같았는데 그냥 똑같아서 당황스럽다. 1 . input 과 group 으로 알파벳을 받아온다 이렇게 group으로 받아오면 값.. 코딩테스트/기초 2022.01.03
백준 2908 상수 - python 출처 : https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 풀이 : a,b = list(input().split()) re_1 = a[2] + a[1] + a[0] re_2 = b[2] + b[1] + b[0] if int(re_1) > int(re_2): print(int(re_1)) else : print(int(re_2)) 1. a, b 따로 입출력 받아온다. 2. 그리고 str로 받아왔으므로 문자열 각각을 리스트로 불러 올 수 있다. 그래서 a[2] .. 코딩테스트 2022.01.03
백준 1152 단어의 개수 출처 : https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 풀이 : a = list(input().split()) print(len(a)) 허허... 그냥 자려다가 실버 찍기 일보직전이라 찍고 잔다 일주만에 찍었으니 골드 빨리가보장 코딩테스트/기초 2022.01.02
백준 1157 단어공부 - python 출처: https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 풀이 word = input().upper() unique_word = list(set(word)) cnt_list = [] for i in unique_word: cnt = word.count(i) cnt_list.append(cnt) if cnt_list.count(max(cnt_list)) >= 2: print('?') else : 위치 = cnt_list.index(max(cnt_list)) print(unique_.. 코딩테스트/기초 2022.01.02
백준 2675 문자열 반복 - python 출처 : https://www.acmicpc.net/problem/2675 풀이 : t = int(input()) for i in range(t): a = list(input().split()) r = int(a[0]) s = a[1] for j in s: print(j*r, end='') print('') 코드블럭진작 쓸걸.. 진짜 깔끔하당 확실히 나 같은 경우는 데이터 프레임을 보거나 데이터 구조를 보고 계속 변경하고 그 값을 찾는 직관적인 작업을 많이해서 나같은 경우는 리스트를 이용해서 많이 푸는 느낌이다. 1. t를 정수형으로 받아온다. 2. 그 다음 t만큼 테스트 해야하므로 a 라는 리스트로 받아온다. 3. 그리고 a는 정수와 반복해야하는 문자열을 나눠줘야 하므로 반복횟수를 r = int(a[0.. 코딩테스트/기초 2022.01.02
백준 10809 알파벳 찾기 - python 출처 : https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 풀이 : 2가지 풀이가 있다. # My solution s = input() alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] ans = [] for i in alphabet.. 코딩테스트/기초 2022.01.02