반응형

Python 56

[python]백준 8979번: 올림픽(implementation)

# 8979 올림픽 https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 코드 n, k = map(int, input().split()) grade = [] for _ in range(n): list_ = list(map(int, input().split())) grade.append(list_) grade = sorted(grade, key = lambda x : (-x[1], -x[2], -x[3])) for i in ran..

Algorithm 2023.01.10

[python]백준 9461번: 파도반 수열(DP)

# 9461 파도반 수열 https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net 코드 T = int(input()) for _ in range(T): n = int(input()) dp = [0] * 101 dp[1] = 1 dp[2] = 1 dp[3] = 1 dp[4] = 2 dp[5] = 2 dp[6] = 3 for i in range(5, n+1): dp[i] = dp[i-1] + dp[i-5] print(dp[n]) 📝 풀이 그림과 같이 정삼각형의 ..

Algorithm 2023.01.08

예술작품 중개 서비스, NES(22.11.24 ~ 22.12.14)

✅ 2022.11.24 ~ 22.12.14 (3주) 약 3주간 진행했던 3번째 프로젝트도 끝이 났다. 이번 프로젝트에서는 이전 프로젝트와 다르게 프론트와 백엔드 역할을 확실하게 나눠서 진행했었다. 5명에서 3명이 프론트 2명이 백엔드를 맡았고, 나는 백엔드를 맡았다. 이전에 했던 2개의 프로젝트에서는 각자 프론트+백엔드를 맡아서 했기 때문에 앱별로 구분지어서 코드를 짰다고 한다면 이번 프로젝트에서는 백엔드에서 기초 코드를 작성하고 프론트 팀원들이 디자인을 입히는 작업을 했다. 기획 단계에서는 서비스 방향성을 정했다. 우리는 예술대학 졸업생들의 작품을 판매하려는 판매자와 구매자를 연결해주는 중개 플랫폼을 진행하기로 했다. 서비스의 방향성을 정한 후에는 위와 같이 ERD Cloud와 피그마로 화면설계를 진행..

프로젝트 2023.01.07

[python]백준 2589번: 보물섬(BFS)

# 2589 보물섬 https://www.acmicpc.net/problem/2589 2589번: 보물섬 첫째 줄에는 보물 지도의 세로의 크기와 가로의 크기가 빈칸을 사이에 두고 주어진다. 이어 L과 W로 표시된 보물 지도가 아래의 예와 같이 주어지며, 각 문자 사이에는 빈 칸이 없다. 보물 지도의 www.acmicpc.net 코드 import sys input = sys.stdin.readline from collections import deque r, c = map(int, input().strip().split()) graph = [] for _ in range(c): graph.append(list(input())) # 상하좌우 dx = [0, 0, -1, 1] dy = [-1, 1, 0, 0]..

Algorithm 2023.01.07

컴파일러란? (feat. 인터프리터)

✅ 컴파일러(Compiler) 컴파일러란 사람이 이해할 수 있는 언어를 기계어로 변환해주는 작업이다. 사람이 이해할 수 있는 언어는 우리가 사용하는 C언어, Java, Python 등의 프로그래밍언어로 작성된 소스코드를 의미한다. 그리고 이러한 프로그래밍 언어를 하위 수준 언어로 변환하여 실행가능한 프로그램을 만드는 작업을 컴파일러(Compiler)라고 한다. 물론 소스코드를 실제 실행 파일로 변환하는 컴파일 작업에는 위와 같이 많은 단계들이 있지만 간단하게 살펴보려고 한다. ✅ 컴파일 과정 컴파일 과정은 4가지 단계(전처리 과정 - 컴파일 과정 - 어셈블리 과정 - 링킹 과정)으로 나누어 진다. 이 4가지 단계를 묶어서 컴파일 과정, 빌드 과정이라고 부르기도 하고 컴파일 과정과 링킹 과정을 따로 나눠서..

Computer Science 2023.01.06

[python]백준 1010번: 다리 놓기(Combination)

# 1010 다리 놓기 https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 코드 import math T = int(input()) for _ in range(T): n, m = map(int, input().split()) print(math.comb(m, n)) 📝 풀이 강을 기준으로 n이 서쪽이고 m이 동쪽이다. m에서 겹치지 않게 n만큼 뽑아주면 된다. 예제를 보면 2C2, 5C1, 29C13와 같은 값이 나온다. 그래서 딱 보자마자 조합 ..

Algorithm 2023.01.05

[python]백준 12851번: 숨바꼭질 2(BFS)

# 12851 숨바꼭질 2 https://www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net 코드 from collections import deque n, k = map(int, input().split()) visited = [0] * 100001 q = deque([(n, 0)]) fast, way = 10 ** 6, 0 while q: now, time = q.popleft() visited[now] = 1 if no..

Algorithm 2023.01.04

[python]백준 2579번: 계단 오르기(DP)

# 2579 계단 오르기 https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 코드 n = int(input()) list_ = [int(input()) for _ in range(n)] dp = [0] * n if len(list_)

Algorithm 2023.01.04

[python]백준 1463번: 1로 만들기(DP)

# 1463 1로 만들기 https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 코드 n = int(input()) dp = [0] * (n+1) for i in range(2, n + 1): dp[i] = dp[i-1] + 1 if i % 2 == 0: dp[i] = min(dp[i], dp[i//2] + 1) if i % 3 == 0: dp[i] = min(dp[i], dp[i//3] + 1) print(dp[n]) 📝 풀이 문제에서는 1로 만들기 위한 세 가지 가정을 제시했다. X가 3으로 나누어 떨어지면, 3으로 나눈다. X가 2로 나누어 떨어지면, 2로 나..

Algorithm 2023.01.04

크리스마스 커뮤니티, 모닥불(22.11.09 ~ 22.11.21)

22.11.09 ~ 22.11.21 약 1주일 반. 프로젝트가 마무리 되었다. 하나의 서비스를 만들기 위해 5명의 팀원들과 일주일 반동안 같이 시간을 보냈는데 프로젝트가 끝날때 시원섭섭함이 몰려왔다. 나중에 이 글을 봤을 때 지금의 감정이 잊혀지지 않게 일기 형식으로 기록해보고자 한다. 22.11.09 첫 날 팀원들과 어색함 속에 서비스 기획을 했다. 여러가지 아이디어가 오고 가던 중, 내가 사람들이 진짜 이용할만한 서비스를 만들어보자고 제안했다. 사람들이 우리(초보 개발자) 서비스를 이용하기 위해서는 3가지 중 한가지를 충족해야 한다고 생각했다. ​ 첫 번째는 개쩌는 아이디어, 기존에 없어서 사람들이 이용할 수 밖에 없는 서비스. 두 번째​는 개쩌는 편의성, 기존에 있지만 너무 편리해서 사용하게 되는 ..

프로젝트 2023.01.03
728x90
반응형