일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 프로그래머스
- algorithm
- brute force
- javascript
- codility
- error
- Spring
- 파이썬
- 라이브템플릿
- 코딩테스트
- 2981
- spring security
- beandefinitionstoreexception
- HTTP
- 탐욕법
- 백준
- Python
- 2018 KAKAO BLIND RECRUITMENT
- BFS
- 알고리즘
- counting elements
- 소수
- java
- springboot
- 최단경로
- applicationeventpublisher
- 문자열
- Dijkstra
- Greedy
- API
- Today
- Total
목록분류 전체보기 (78)
Altiora Petamus
10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net 🤔생각해보기 최근 난이도를 볼 수 있게 된 이후 브론즈 단계의 문제는 객관적으로 참고할 일이 거의 없을 것 같아서 따로 작성하지 않았다. 하지만 이 문제는 난이도를 떠나 풀이 방법이 꽤나 다양하게 나올 수 있고 그 과정이 개인적으로 재미있었기 때문에 작성해본다. 로직은 문제에서 설명해준 그대로 세로로 읽게 하면 된다. 아무래도 반복문을 사용하는 풀이가 많이 보이던데, 그러면 depth 의 증가를 피할 수 없으므로 zip() 을 활용해서 풀어보았다. Code..
코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 🤔생각해보기 파이썬의 정렬은 순서가 뒤집히지 않는 stable 한 정렬을 구현하고 있다. 그러므로 정렬의 단계에 맞춰서 실행되게끔만 구현하면 된다. 방법은 다음과 같다. 문자열을 파싱하기 위해서 정규식을 사용한다. 정규식의 그룹을 활용하면 특정 부분을 쉽게 추출할 수 있다. 파이썬의 람다를 활용하면 정렬 조건을 넣을 수 있다. 튜플의 요소들이 순서대로 실행된다. 코드 import re def solution(files): p = re.compile(r..
코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 🤔생각해보기 처음은 정규식으로 해결했는데 원인 모를 런타임 에러가 발생해서 정규식을 사용하지 않고 해결했다. 사실 "," 로 필요한 문자열을 구분할 수 있기 때문에 굳이 정규식을 쓰지 않아도 되고... 에러 찾는데 시간을 오래 허비해서 아쉽지만, 해결과정의 알고리즘은 간단한 편이다. "#" 을 그냥 처리할 수는 없으므로 2개의 문자를 하나로 변환해주는 과정을 구현해주는 것이 핵심 아이디어라 할 수 있겠다. 코드 def convert(string): ..
github 저장소를 다운받으려고 명령어를 실행시켰는데 다음과 같은 에러를 만나게 됐다. 이게 무슨 일인가 싶어 생각해보고 있는데, 깃허브에서 바로 다음과 같은 메일이 하나 날아왔다. 대충 읽어보니 패스워드를 사용하는 접근 방식은 앞으로 사용되지 않을 것이라고 한다. 예전부터 이런 언급이 종종 있어서 깃허브의 commit 관련 인증 방식도 https link 를 통한 방식이 아닌, SSH 을 사용한 인증으로 바꿔두었는데 바꾸는 과정에서 여러 에러를 해결하느라 머리를 싸맸던 기억이 있다. 더보기 [Erorr] Sourcetree permission denied 해결 에러 발생 상황 accidental-clematis-b07.notion.site 비밀번호를 통한 인증방식이 안전하지 않다면, ssh token..
영화 정보를 가져오는 OMDb API 를 사용해보던 중에 DTO로 정보를 처리하고 있었다. 이 과정에서 약간의 문제가 있었는데, 평소 나는 camelCase 방식을 사용하여 프로젝트를 작성하지만 api에서는 앞글자를 대문자로 JSON 데이터를 제공하고 있다. { "Title": "Frozen", "Year": "2013", "Type": "movie", "Poster": "https://m.media-amazon.com/images/M/MV5BMTQ1MjQwMTE5OF5BMl5BanBnXkFtZTgwNjk3MTcyMDE@._V1_SX300.jpg", "imdbID": "tt2294629" } private String title; private String year; private String imdbI..
Intro REST API 의 다양한 사용법에 대해 알아봅니다. 모든 테스트는 Postman 을 활용해 진행했습니다. HTTP Request 기본 사용법 @RestController @RequestMapping("/mapping/users") public class MappingClassController { @GetMapping public String user() { return "get users"; } @PostMapping public String addUser() { return "post user"; } @GetMapping("/{userId}") public String findUser(@PathVariable String userId) { return "get userId=" + user..
Intro REST API 에 대해 학습하면서 정리하는 글입니다. HTTP Request mapping 이하 모든 API 는 "ok" 라는 텍스트를 반환합니다. 기본 요청 @RestController public class MappingController { private Logger log = LoggerFactory.getLogger(getClass()); @RequestMapping("/hello-basic") public String helloBasic() { log.info("helloBasic"); return "ok"; } } "/hello-basic" or "/hello-basic/" 모두 허용 HTTP method 모두 허용 : GET, POST, PUT, PATCH, DELETE, HE..
1504번: 특정한 최단 경로 첫째 줄에 정점의 개수 N과 간선의 개수 E가 주어진다. (2 ≤ N ≤ 800, 0 ≤ E ≤ 200,000) 둘째 줄부터 E개의 줄에 걸쳐서 세 개의 정수 a, b, c가 주어지는데, a번 정점에서 b번 정점까지 양방향 길이 존 www.acmicpc.net 🤔생각해보기 최단 경로 문제의 특정 조건이 포함된 응용 버전이다. v1, v2 를 거쳐서 N 에 도달해야하는데 처음엔 v2 → v1 의 경우를 미처 고려하지 못해서 헤메다가 다른 분의 풀이에서 그 조건에 대한 통찰을 얻게 되어 해결할 수 있었다. 시작점 → v1 → v2 → N 시작점 → v2 → v1 → N 위 2가지 경우의 경로를 구하여 둘 중 작은 값을 출력한다. 코드 import sys import heapq ..