분류 전체보기 512

[프로그래머스] 2021 카카오 블라인드 채용 > 신규 아이디 추천

programmers.co.kr/learn/courses/30/lessons/72410?language=python3 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가 programmers.co.kr 문제 설명 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입..

View 환경설정

Welcome Page static/index.html 을 올려두면 Welcome Page 기능을 제공한다. 컨트롤러에서 return 값으로 문자를 반환하면 뷰 리졸버(viewResolver)가 화면을 찾아서 처리한다. 스프링 부트 템플릿엔진 기본 viewName 매핑 resource:template/ + {ViewName} + .html Controller에서 model에 담은 key와 value값이 hello.html로 리턴되고 (return "hello"를 통해 hello라는 이름을 가진 view로 반환된다.) 이를 view안의 data(model의 키값에다가 value를 넣어주는 형식)

라이브러리 살펴보기

우리가 처음에 프로젝트를 만들 때 spring web과 thymeleaf를 가져왔는데, 이것들이 의존하고 있던 다른 라이브러리까지 알아서 자동으로 가져온다. ==> 이클립스와는 차별되는 intelliJ의 장점이라고 함. 심각한 오류나 기록들을 남기기 위해 system.out.println이 아닌 log로 출력을 한다.(실무에서) 스프링 부트 라이브러리 spring-boot-starter-web spring-boot-starter-tomcat : 톰캣 (웹서버) spring-webmvc : 스프링 웹 MVC spring-boot-starter-thymeleaf : 타임리프 템플릿 엔진(View) spring-boot-starter(공통) : 스프링 부트 + 스프링 코어 + 로깅 spring-boot spr..

[백준] 2004번 > 조합 0의 개수

www.acmicpc.net/problem/2004 2004번: 조합 0의 개수 첫째 줄에 정수 $n$, $m$ ($0 \le m \le n \le 2,000,000,000$, $n \ne 0$)이 들어온다. www.acmicpc.net 문제 (nm)의 끝자리 0의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 n, m (0≤m≤n≤2,000,000,000, n≠0)이 들어온다. 출력 첫째 줄에 (nm)의 끝자리 0의 개수를 출력한다. 예제 입력 1 25 12 예제 출력 1 2 풀이 처음에는 이항계수를 factorial로 직접 계산하고 구하는 식으로하니 시간 초과가 발생했다. def countNum(N, num): count = 0 divNum = num while( N >= divNum)..

이진 탐색

이진 탐색 알고리즘 순차 탐색 : 리스트 안에 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 확인하는 방법 이진 탐색 : 정렬되어 있는 리스트에서 탐색 범위의 절반씩 좁혀가며 데이터를 탐색하는 방법 이진 탐색은 시작점, 끝점, 중간점을 이용하여 탐색 범위를 설정합니다. 이진 탐색의 시간 복잡도 단계마다 탐색 범위를 2로 나누는 것과 동일하므로 연산 횟수는 log2n에 비례합니다. 예를 들어 초기 데이터 개수가 32개일 때, 이상적으로 1단계를 거치면 16개가량의 데이터만 남습니다. 2단계 8개 3단계 4개 다시 말해 이진탐색은 탐색 범위를 절반씩 줄이며, 시간 복잡도는 O(logN)을 보장합니다. 이진 탐색 소스코드 : 재귀적 구현 def binary_search(array, target, sta..

Spring 시작

1. 프로젝트 생성 start.spring.io/ ==> 스프링부트 기반으로 스프링관련 프로젝트를 만들어주는 사이트. 여기서 프로젝트를 만든 후에 intelliJ로 열 것이 다. Maven VS Gradle ?? 필요한 라이브러리를 가져와주고, Life Cycle까지 관리해주는 빌드 툴. 최근은 거의다 Gradle을 사용하는 추세(예전에는 Maven이었지만 다 넘어오는 추세) Project Metadata Group 기업명, 도메인명 Artifact 빌드되어 나올 때 결과물 Dependencies 어떤 라이브러리를 사용할 것인지 src main java 실제 패키지와 소스파일들 resources html, xml 등등(자바파일을 제외한 나머지) test 테스트코드와 관련된 소스 ==> main과 test..

[백준] 1676번 > 팩토리얼 0의 개수

www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500) 출력 첫째 줄에 구한 0의 개수를 출력한다. 예제 입력 1 10 예제 출력 1 2 예제 입력 2 3 예제 출력 2 0 풀이 외장함수를 통해 factorial을 구하고, 문자열로 바꾸어 리스트에 담은 후, 뒤집어 0이 아닌지를 판별한다. 왜 실버문제인지 모르겠다.. 아마 파이썬말고 다른 언어로 이렇게 풀었으면 실패했을 것 같다. from m..

[백준] 9375번 > 패션왕 신해빈

www.acmicpc.net/problem/9375 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net 문제 해빈이는 패션에 매우 민감해서 한번 입었던 옷들의 조합을 절대 다시 입지 않는다. 예를 들어 오늘 해빈이가 안경, 코트, 상의, 신발을 입었다면, 다음날은 바지를 추가로 입거나 안경대신 렌즈를 착용하거나 해야한다. 해빈이가 가진 의상들이 주어졌을때 과연 해빈이는 알몸이 아닌 상태로 며칠동안 밖에 돌아다닐 수 있을까..

[백준] 11051번 > 이항 계수 2

www.acmicpc.net/problem/11051 11051번: 이항 계수 2 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 1,000, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 문제 자연수 N과 정수 K가 주어졌을 때 이항 계수 (NK)를 10,007로 나눈 나머지를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ K ≤ N) 출력 (NK)를 10,007로 나눈 나머지를 출력한다. 예제 입력 1 5 2 예제 출력 1 10 풀이 이항 계수1 과 같은 방식으로 구현하니 (RecursionError)가 발생하여, factorial을 외장함수로 풀었더니 맞았다. from math import factoria..

[백준] 11050번 > 이항 계수 1

www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 문제 자연수 N과 정수 K가 주어졌을 때 이항 계수 (NK)를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 0 ≤ K ≤ N) 출력 (NK)를 출력한다. 예제 입력 1 5 2 예제 출력 1 10 풀이 이항계수는 다음과 같이 정의한다. 근데 문제에서 (1 ≤ N ≤ 10, 0 ≤ K ≤ N)라고 범위를 다 지정해주었으므로 첫번째 case만 생각해주면 된다. def factorial(num): if num

반응형