Programming 38

백준 24060 : 알고리즘 수업 - 병행정렬 [파이썬]

https://www.acmicpc.net/problem/24060 24060번: 알고리즘 수업 - 병합 정렬 1 첫째 줄에 배열 A의 크기 N(5 ≤ N ≤ 500,000), 저장 횟수 K(1 ≤ K ≤ 108)가 주어진다. 다음 줄에 서로 다른 배열 A의 원소 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 109) www.acmicpc.net 1 . 코드 설명 병합 정렬을 재귀 알고리즘으로 풀어가는 방식이였다. 병합 정렬부터 공부하고 시작했다. 이렇게 앞뒤를 나눠서 정렬해 나가면서 조합하는 방식이였다. k는 번째로 정렬한 수이다. 배열 A는 [ 3, 4, 1, 3, 4, 2, 5, 1, 2, 3, 4, 5] 이런 식으로 나온다. 2. 예 앞서 설명한대로 앞뒤로 쪼개 앞에서 부터 하나씩 정..

Programming/python 2023.01.16

백준 4948 : 베르트랑 공준 [파이썬]

https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 1. 코드설명 자연수 n에 대하여 n부터 2n사이에 소수가 적어도 하나 존재한다는 내용 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 문제 2. 예 3. 코드 내용 # 4948 : 베르트랑 공준 # 시간초과로 틀림 a = 1 def sosu(n): if n == 1: return False for i in range(2, int(n**0.5)+1): i..

Programming/python 2023.01.11

백준 2839 : 설탕배달

https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 1. 코드 설명 3kg, 5kg으로 설탕봉투 수를 세는데 최대한 적게 봉투를 가져가야한다. 필요한 무게를 입력받고 최소필요 봉투 개수를 출력한다. 2. 예 : 18kg의 경우 3kg 6개 보다 5kg 3개 + 3kg 1개 해서 4봉투를 가져가는 방법을 추구 3. 풀이 코드 # 2839 : 설탕배달 s = int(input()) if s%5==0: print(s//5) else: p=0 while s>0: i..

Programming/python 2023.01.09

백준 2775 : 부녀회장이 될테야

https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 1. 코드 설명 임의의 층과 호수를 입력받고 해당 호실에 사는 사람의 수를 나타낸다. 해당 호실 사람의 수는 한층아래 1부터 n호수 까지 사람 수를 합해 구한다. 2. 1층 3호실이면 6명, 2층 3호실이라면 10명이다. 2층 1 4 10 1층 1 3 6 0층 1 2 3 # 2775 : 부녀회장이 될테야 T = int(input()) for test_case in range(1, T+1): k = int(input()) n = int(i..

Programming/python 2023.01.09

백준 1193 : 분수찾기

www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net a = int(input()) line = 0 end = 0 while a > end: line += 1 end += line diff = end - a if line%2: top = diff + 1 bottom = line - diff else: top = line - diff bottom = diff + 1 print(f'{top}/{bottom}') 분수의 개수는 라인 수만큼 개수가 있다. 허나, 지그재그 이므로 짝수라인은 분자가 1씩 늘어가고 분모가 1씩 감소한다(홀수는 반대) while문으로 인덱스가 몇번째 라인에 있는지 알아낸다 i..

Programming/python 2022.12.28

11.29(Tue)경진대회 참가

경진 대회 참가 빅프로젝트 워크숍을 진행하면서 다른 분들과 이야기하면서 느낀점이 경진대회 준비하면서 실력이 늘었다라는 말들을 많이 들었다. 뭔가 아무것도 안하고 복습만하고 있었는데 새로운 자극을 받을 수 있는 경험이 될것 같고 어려운 부분을 찾고 공부해 나가면서 성장하고 싶어 경진대회를 참가 하려고 한다. AIFACTORY 내가 찾은 것은 AIFACTORY 들어가서 진행중인 대회에 참가를 했다. 수돗물 데이터 사용량 예측이였는데 시계열 데이터를 사용하여 예측해 나가는 방식이였다. 이제 시작이라 전처리나 등등 어려움이 있지만 천천히 준비하면서 경험해본다는 느낌과 함께 좋은 성적을 얻겠다라는 마음가짐으로 도전해보고자 한다.

Programming/python 2022.11.30
728x90