목록분류 전체보기 (83)
9시 24분
https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net t = int(input()) for _ in range(0,t): n = int(input()) zero = [0] * (n+2) one = [0] * (n+2) for i in range(0, n+1): if i == 0: zero[i] = 1 elif i == 1: one[i] = 1 else: zero[i] = zero[i-1] + zero[i-2] one[i] = one[i-1] + one[i-2] print(zero[n], one[n]) 앞선 문제와 달리, if-elif-else로 ..
https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net def makeOne(n): dp = [0] * (n + 1) for i in range(2, n+1): dp[i] = dp[i-1] + 1 if i % 3 == 0: dp[i] = min(dp[i], 1 + dp[i//3]) if i % 2 == 0: dp[i] = min(dp[i], 1 + dp[i//2]) return dp[n] n = int(input()) print(makeOne(n)) DP는 모든 방법을 일일이 검토하여 최적의 해를 찾아내는 방식이다. 결국 1 빼기, 2 나누기, 3 나누기라는 세 가..
https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr def solution(s): answer = -1 stack = [0] for i in range(len(s)): top = stack[-1] if(top == s[i]): stack.pop() else: stack.append(s[i]) stack.remove(0) if not stack: answer = 1 else: answer = 0 ret..

패스트캠퍼스 '한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online'의 Part2 - Ch 02. 객체지향 입문을 수강하며 내용을 정리한 글입니다. 객체와 객체지향 프로그래밍 객체 (Object) : 구체적, 추상적 데이터의 단위 ( ex. 학생, 회원, 주문 등등 ... ) 객체 지향 프로그래밍 vs 절차 지향 프로그래밍 아침에 일어나 학교를 가는 과정을 예로 들어보자. 절차 지향 프로그래밍: 일어난다 > 씻는다 > 밥을 먹는다 > 버스를 탄다 > 요금을 지불한다 > 학교에 도착 객체 지향 프로그래밍: 객체와 객체들 간의 관계를 사용하여 프로그래밍 객체 지향 프로그램의 구현 객체를 정의 각 객체가 제공하는 기능을 구현 각 객체가 제공하는 기능들 간의 소통을 통하여 객체 간의 협..

패스트캠퍼스 '한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online'의 Part1. 자바 프로그래밍을 수강하며 내용을 정리한 글입니다. 자바 프로그래밍 시작하기 프로그래밍: 컴퓨터가 일을 수행하도록 프로그래밍 언어로 명령어 집합(프로그램)을 만드는 일 컴파일: 프로그래밍 언어를 컴퓨터가 실행 가능한 기계어로 만드는 일 컴파일러: 기계어로 바꾸어주는 프로그램 [ 자바 프로그래밍의 특징 ] 플랫폼(운영체제)에 영향을 받지 않으므로 다양한 환경에서 사용할 수 있다. (C는 윈도우와 리눅스에서 실행하느냐에 따라 파일이 다르게 만들어짐) 객체 지향 언어이기 때문에 유지보수가 쉽고 확장성이 좋다. 프로그램이 안정적이다. 풍부한 기능이 제공되는 오픈 소스이다. [ 객체지향 프로그래밍 ] 프로..

테스팅에 대한 소개 package.json 파일을 보면 테스팅과 관련된 스크립트가 5개 정도 있다. jest는, 자바스크립트를 쉽게 테스팅하는 npm 패키지로, .spec.ts로 된 테스트를 포함한 파일들을 테스트한다. test:cov 코드가 얼마나 테스팅 됐는지 또는 안됐는지를 보여준다. test:watch 모든 테스트 파일을 찾아 무슨 일이 있는지 관찰한다. 테스트의 종류에는 E2E(End-To-End) 테스팅, Integration 테스팅, Unit 테스팅이 있는데 강의에서는 E2E(End-To-End) 테스팅과 Unit 테스팅을 다룬다. Unit 테스팅 - 함수나 서비스에서 분리된 유닛 같이 테스트할 수 있는 가장 작은 단위를 독립적으로 테스트 방법이다. ex) getAll() 함수만 테스팅하고 ..
보호되어 있는 글입니다.

이제 실전으로 가서 Movie REST API를 직접 만들어보자. Movies Controller Nest cli를 이용해서 controller 파일을 만들어주자. nest generate 명령어를 사용하여 movies controller을 생성해준다. app.module.ts에 movies 컨트롤러가 자동으로 import되며, movies.controller.ts 파일이 생성된다. spec는 테스트 파일인데, 일단 지우고 시작하자. movies controller에 들어가서 아래와 같이 테스트해보자. import { Controller, Get } from '@nestjs/common'; @Controller('movies') export class MoviesController { @Get() get..