반응형

분류 전체보기 268

[파이썬, Python] 백준 1149: RGB거리

문제 https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 코드 import sys input = sys.stdin.readline n = int(input()) dp = list(list(map(int, input().split())) for _ in range(n)) for i in range(1, n): dp[i][0] += min(dp[i-1][1], dp[i-1][2]) dp[i][1] += min(dp[i-1][0],..

[파이썬, Python] 백준 3986: 좋은 단어

문제 https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net 코드 n = int(input()) cnt = 0 for _ in range(n): s = input() stack = [] for i in s: if stack and stack[-1] == i: stack.pop() else: stack.append(i) if not stack: cnt += 1 print(cnt) 설명 우선 n을 받아주고, 정답을 카운트할 cnt를 만들어준다. 그리고 n의 수만큼 ..

[T-SUM] 5주차 자료 - if/else/elif 조건문, and/or

오늘의 내용 미리보기 본문 세상을 살다 보면 조건에 따라 결과가 달라지는 경우가 있습니다. 비밀번호가 맞으면 금고가 열린다거나, 올바른 출입증이 아니면 출입이 안 된다거나 뭐 그런 상황이 있어요. 코딩을 하다가도 이런 상황을 자주 마주칩니다. 특정 사용자는 이용이 불가능한 게시판이 있다던지, 로그인을 하지 않으면 접속이 안된다던지 하는 그런 상황이 있죠. 우리는 이런 상황을 이렇게 표현합니다. '만약 ~ 라면' 이를 조건문이라고 합니다. 파이썬에서는 이를 if와 else를 사용해서 표현합니다. 우선 예시를 한 번 볼까요? 배우지는 않았지만 어째서인지 읽을 수는 있을 것 같죠? 있는 그대로 읽으면 됩니다. 만약 10이 7보다 크다면(조건) 정답을 출력하라(결과) 이런 식으로 조건문은 조건과 그에 따른 결과..

T-SUM 멘토링 2023.07.06

[JavaScript, Node.js] 유튜브 클론 정리 8장 (4) - 유저 프로필 페이지

머리글 이번 시간에는 유저의 프로필 페이지를 제작해 보자. 기존에 했던 작업과 큰 차이가 없다. 유저 프로필 페이지 헤더에 프로필 주소로 갈 공간을 만들자. ... li a(href=`/users/${loggedInUser._id}`) My Profile ... 로그인 한 유저의 아이디를 통해서 접근을 하기로 했다. 그리고 유저 프로필 페이지 접근을 위한 컨트롤러를 제작해 보자. export const see = async (req, res) => { const { id } = req.params; const user = await User.findById(id); if (!user) { return res.status(404).render("404", { pageTitle: "User not found..

[파이썬, Python] 백준 1439: 뒤집기

문제 https://www.acmicpc.net/problem/1439 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net 코드 s = input() cnt = 0 for i in range(len(s) - 1): if s[i] != s[i + 1]: cnt += 1 print((cnt + 1) // 2) 설명 어렵게 접근하려다가 아이디어가 생각이 안 나서 그냥 다른 부분을 뒤집어 보기로 생각했다. 0에서 1로 혹은 1에서 0으로 변하는 부분을 카운트해 준다. 그러고 나서 2로 나눈 몫을 출력할 건데 0 혹은 1..

[파이썬, Python] 백준 1541: 잃어버린 괄호

문제 https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 코드 exp = input().split('-') ans = 0 for i in exp[0].split('+'): ans += int(i) for i in exp[1:]: for j in i.split('+'): ans -= int(j) print(ans) 설명 식의 값이 최소가 되려면 최대한 큰 값을 빼주어야 한다. 즉, '-' 뒤의 모든 + 값을 괄호로 묶어주면 된다. [3 + 5 ..

[JavaScript, Node.js] 유튜브 클론 정리 8장 (3) - 비디오 업로드

머리글 이번 시간에는 비디오를 업로드해보자. 비디오 업로드 우선 파일 업로드와 마찬가지로 업로드할 자리를 만들어주자. form(method="POST", enctype="multipart/form-data") label(for="video") Video File input(type="file", accept="video/*", required, id="video", name="video") 모든 형식의 비디오를 accept 했고, required 옵션으로 필수로 넣게 지정했다. 그리고 multer를 사용하기 위해 enctype를 설정해 주었다. 그리고 미들웨어를 생성해 주자. 기존의 아바타와 같은 미들웨어를 사용해도 상관은 없지만, 파일 사이즈의 제한을 위해서 하나 더 생성해 보자. export cons..

[파이썬, Python] 백준 3273: 두 수의 합

문제 https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 코드 import sys input = sys.stdin.readline n = int(input()) nums = sorted(list(map(int, input().split()))) x = int(input()) cnt = 0 start = 0 end = n - 1 while start < end: inter_sum = nums[s..

[파이썬, Python] 백준 2559: 수열

문제 https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 코드 import sys input = sys.stdin.readline n, k = map(int, input().split()) nums = list(map(int, input().split())) part_sum = sum(nums[:k]) max_sum = part_sum for i in range(k, n): part_sum += nums[i] - nums[i - k] ..

[파이썬, Python] 백준 2776: 암기왕

문제 https://www.acmicpc.net/problem/2776 2776번: 암기왕 연종이는 엄청난 기억력을 가지고 있다. 그래서 하루 동안 본 정수들을 모두 기억 할 수 있다. 하지만 이를 믿을 수 없는 동규는 그의 기억력을 시험해 보기로 한다. 동규는 연종을 따라 다니며, www.acmicpc.net 코드 import sys input = sys.stdin.readline t = int(input()) for _ in range(t): n = int(input()) note1 = set(map(int, input().split())) m = int(input()) note2 = list(map(int, input().split())) for num in note2: if num in note1..

반응형