본문 바로가기

전체 글

(81)
[알고리즘] 백준 1110번 Java 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 ..
[알고리즘] 백준 10951번 Java https://www.acmicpc.net/problem/10951 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. 예제 입력1 1 1 2 3 3 4 9 8 5 2 예제 출력1 2 5 7 17 7 Code import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.IO..
[Java] BufferReader, BufferWriter 사용하기(System.out.print 와 Scanner 가 느린 이유) [Java] BufferReader, BufferWriter 사용하기(System.out.print 와 Scanner 가 느린 이유) 백준 알고리즘 공부하던 중 빠른 A+B 15552번 문제를 접하게 됐다. 그런데 일반적으로 사용한더 Scanner 와 System.out.print를 사용하게 되면 시간초과로 실패하게 되었다. 그렇기에 BufferReader 와 BufferWriter을 공부하고 사용하기로 마음 먹었다. System.out.println() 이 느린 이유 https://donggov.tistory.com/53 위의 글에 잘 정리되어 있다. 간단히 축약하자면 System은 Object 클래스를 상속받은 final 클래스 이며, out은 PrintStream의 인스턴스이고, println()은..
[알고리즘] 백준 2525번 Java [알고리즘] 백준 10171번 Java https://www.acmicpc.net/problem/2525 문제 KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오 입력 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 ..
[Spring Boot] 게시판 조회수 중복 방지 (Cookie 사용, Mybatis) [Spring Boot] 게시판 조회수 중복 방지 (Cookie 사용, Mybatis) 게시판에서 조회수는 사용자가 해당 게시글을 읽어보게 하는 하나의 지표가 될 수 있다고 생각한다. 그러한 기능을 단지 게시글에 접속하는것만으로 무한정 올릴 수 있다면, 그 지표의 역할이 사라진다고 본다. 그렇기에 내가 만드는 게시판에는 조회수 중복을 방지하도록 하였다. 구현 먼저 간단하게 Cookie의 개념을 집고 넘어가는 것이 좋다. Cookie란 HTTP 통신 과정에서 브라우저에 저장되는 작은 데이터 조각이라 할 수 있다. [Network] 간단히 알아보는 Cookie, Session Cookie에 대해서는 위의 글에 간단히 정리해 두었다. BoardMapper.xml UPDATE hellparty_board SET..
[Spring Boot] @JsonFormat으로 Date 타입 직렬화(Json Date 타입 포맷) [Spring Boot] @JsonFormat으로 Date 타입 직렬화(Json Date 타입 포맷) 댓글 기능을 구현하던 중 댓글 등록 날짜를 표시하고 싶었다. Json으로 데이터를 View에 보내 Ajax로 구현하던 중 View에서 내가 원하는 format 형식의 데이터가 잘 출력이 되지 않았다. Controller에서 Date 타입을 SimpleDateFormat을 이용하여 가공하여 보내려고 해도 잘 되지 않았다. 그렇기에 구글링을 통해 @JsonFormat이라는 어노테이션을 알게 되었고 적용해 보았다. 공식문서 Common uses include choosing between alternate representations -- for example, whether Date is to be seri..
[Spring Boot] TimeZone 설정 (KST, UTC, KST to UTC, 9시간 차이) [Spring Boot] TimeZone 설정 (KST, UTC, KST to UTC, 9시간 차이) DB에 저장된 Date형식을 Thymeleaf를 통해 View에 출력하려고 했다. 그런데 계속 DB에 저장된 시간보다 +9시간 되어서 출력되길래 무엇이 문제인지 찾아 보았다. 위의 사진은 DB에 저장되어있는 Date이다. 아래는 서버를 실행시켜 Thymeleaf를 이용하여 View에 나타낸 것이다. DB에 저장된 시간과 9시간이 차이가 나며 KST라는 표시가 나와있다. 그래서 KST에 대해 알아보았다. 한국 표준시(韓國標準時, KST, Korea Standard Time)는 대한민국과 조선민주주의인민공화국의 표준시로, 동경 135도를 기준으로 하여 UTC보다 9시간 빠른 표준시(UTC+09:00)이다. ..
[Spring Boot] Quill.js + 이미지 업로드 (위지윅 에디터 이미지 업로드) [Spring Boot] Quill.js + 이미지 업로드 (위지윅 에디터 이미지 업로드) 참조 블로그 위의 블로그에 나와있는 JS 콜백 함수를 이용한 방법을 참조하여 구현하였습니다. 위지윅 에디터에는 종류가 몇가지 존재한다. CkEditor, Summernote, 네이버에서 제공하는 스마트 에디터(?) 등이 있다. 위지윅에 대한 글은 전에 작성해 두었다. 참고 바란다. 위지윅이란? CK Editor 사용하기 현재 위지윅 에디터를 이용하여 글을 작성하는 페이지를 구현하고 있는데 내가 공부해서 알고 있던 내용은 input 태그를 통해 이미지를 업로드하고 View에 출력하는 것이었다. 하지만 위의 방식을 사용하면 위지윅 에디터를 제대로 사용 못한다고 생각이 들었고, 사용자 또한 본인의 게시글에 이미지를 첨부..

728x90
반응형