본문 바로가기

전체 글

(88)
[BOJ]12904번 : A와 B https://www.acmicpc.net/problem/12904 12904번: A와 B 수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수 www.acmicpc.net 문제 파악 문자열 S => T로 바꿀 수 있는지 판단하는 문제이다. 브루트 포스 하게 S => T로 2가지 연산을 적용하면서 바꿔 갈 수 있지만 역으로 T=> S로 찾는 방법으로 문제를 해결하였다. 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRe..
[Programmers] 위클리 챌린지 - 1주차 (부족한 금액 계산기) https://programmers.co.kr/learn/courses/30/lessons/82612 코딩테스트 연습 - 1주차 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이 programmers.co.kr 문제 파악 N번째 이용한다면 원래 이용료의 N배를 받기로 한다는 문구를 보고 등차수열의 합을 생각했고, 아래 예시 (3+6+9+12)를 보고 확신하였다. 등차수열의 합을 구하는 공식은 Sn = n * {2*a + (n-1)*d} / 2 이므로 문제에서는 n(횟수) = count a(초항) = price d(공차) = price로 대입하여 풀면 된다. ..
[BOJ]4358번 : 생태학 https://www.acmicpc.net/problem/4358 4358번: 생태학 프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어 www.acmicpc.net 문제 파악 EOF 가 입력되기 전까지 나무 종을 입력받아서 전체 입력 개수에서 해당 종이 차지하는 비율을 소수점 넷째 자리까지 반올림하여 출력하면 된다. 다른 분의 소스를 보면 Trie를 만들어서 사용 하신 분이 계신데 나는 (Key, Value) + Sort의 자료구조를 생각했고 TreeSet으로 해결하였다. 더보기 import java.io.*; import java.util.Tre..
[JPA] JPA - 엔티티 매핑 해당 내용은 인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본 편에서 공부한 내용을 정리한 것입니다. 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com 엔티티 매핑 소개 객체와 테이블 매핑 : @Entity , @Table 필드와 컬럼 매핑 : @Column 기본 키 매핑 : @id 연관 관계 매핑 : @ManyToOne , @JoinColumn 엔티티란? @Entity가 붙은 클래스는 jpa가 관리하며 이것을 엔티티라 한다. JPA를 사용해서 테이블과 ..
[JPA] JPA - 영속성 관리 해당 내용은 인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본 편에서 공부한 내용을 정리한 것입니다. 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔 www.inflearn.com JPA에서 가장 중요한 2가지 1. 객체와 관계형 데이터베이스를 어떻게 매핑할 것인가? 매핑의 관점 (설계) 2. 영속성 컨텍스트 (실제로 JPA가 내부에서 어떻게 동작하는가) 엔티티 매니저 팩토리(EntityManager Factory)와 엔티티 매니저(EntityManager) 엔티티 매니저 팩토리를 ..
[BOJ] 3986번 : 좋은 단어 https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net 문제 파악 아래 예시처럼 같은 단어끼리이었을 경우 선이 겹친다면 안 좋은 단어, 겹치지 않는다면 좋은 단어로 판단했다. 그리고 분류를 보아하니 스택이 적혀 있어서 스택을 활용하여 문제를 해결하였다. 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stac..
[BOJ]17219번 : 비밀번호 찾기 https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net 문제의 의도는 다음과 같다. 사이트마다 저장해둔 비밀번호가 있고 , 비밀번호를 찾으려는 사이트 주소가 한 줄에 하나씩 입력됐을 때, 해당 사이트의 비밀번호를 출력한다. => 자료구조 HashMap을 사용하여 해결 하였다. 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.Inpu..
[BOJ] 15829번 : Hashing https://www.acmicpc.net/problem/15829 15829번: Hashing APC에 온 것을 환영한다. 만약 여러분이 학교에서 자료구조를 수강했다면 해시 함수에 대해 배웠을 것이다. 해시 함수란 임의의 길이의 입력을 받아서 고정된 길이의 출력을 내보내는 함수로 정 www.acmicpc.net 문제 파악 1. 문자열의 길이가 주어지고 해당 길이를 만족하는 문자열이 주어진다. 2. 문제 설명에 나와있듯이 r의 값은 26보다 큰 소수인 31, M의 값은 1234567891로 정해져 있다. 3. 인덱스 위치 0부터 L-1까지 차수를 증가시키면서 ((해당 인덱스의 문자) - 'a' +1) * (31)^(인덱스) 값을 M으로 나눈 나머지를 구한다. JAVA에는 BigInteger class가 ..