분류 전체보기
[PS] 인프런 강의 - DP 6. 최대점수 구하기(냅색 알고리즘)
문제 이번 정보올림피아드대회에서 좋은 성적을 내기 위하여 현수는 선생님이 주신 N개의 문제를 풀려고 합니다. 각 문제는 그것을 풀었을 때 얻는 점수와 푸는데 걸리는 시간이 주어지게 됩니다. 제한시간 M안에 N개의 문제 중 최대점수를 얻을 수 있도록 해야 합니다. (해당문제는 해당시간이 걸리면 푸는 걸로 간주한다, 한 유형당 한개만 풀 수 있습니다.) ▣ 입력설명 첫 번째 줄에 문제의 개수N(1
[PS] 인프런 강의 - DP 5. 동전교환(냅색 알고리즘)
문제 다음과 같이 여러 단위의 동전들이 주어져 있을때 거스름돈을 가장 적은 수의 동전으로 교환해주려면 어떻게 주면 되는가? 각 단위의 동전은 무한정 쓸 수 있다. ▣ 입력설명 첫 번째 줄에는 동전의 종류개수 N(1
[PS] 인프런 강의 - DP 4. 가장 높은 탑 쌓기
문제 밑면이 정사각형인 직육면체 벽돌들을 사용하여 탑을 쌓고자 한다. 탑은 벽돌을 한 개씩 아래에서 위로 쌓으면서 만들어 간다. 아래의 조건을 만족하면서 가장 높은 탑을 쌓을 수 있는 프로그램을 작성하시오. (조건1) 벽돌은 회전시킬 수 없다. 즉, 옆면을 밑면으로 사용할 수 없다. (조건2) 밑면의 넓이가 같은 벽돌은 없으며, 또한 무게가 같은 벽돌도 없다. (조건3) 벽돌들의 높이는 같을 수도 있다. (조건4) 탑을 쌓을 때 밑면이 좁은 벽돌 위에 밑면이 넓은 벽돌은 놓을 수 없다. (조건5) 무게가 무거운 벽돌을 무게가 가벼운 벽돌 위에 놓을 수 없다. ▣ 입력설명 입력 파일의 첫째 줄에는 입력될 벽돌의 수가 주어진다. 입력으로 주어지는 벽돌의 수는 최대 100개이다. 둘째 줄부터는 각 줄에 한 개..
[PS] 백준 1158번 요세푸스
문제 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 풀이 큐를 이용하여 풀었음 코드 import java.util.*; import java.io.*; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); Strin..
![[Error] Update/delete queries cannot be typed](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcj8dxM%2FbtrLzo1O4hk%2FyMsfDWHHTS33eBGCzFMtxk%2Fimg.png)
[Error] Update/delete queries cannot be typed
JPQL - EntityManager 로 쿼리 작성중 생긴 문제 update 또는 delete 쿼리를 작성할 수 없다 createQuery() 메서드의 매개변수로 들어가는 Query는 2가지 종류 1. Typed Query: 조회 대상과 반환형이 Entity인 쿼리 2. Query: 조회 대상과 반환형이 Entity가 아닌, 기본형 또는 Wrapper 클래스인 쿼리 update/delete 쿼리는 엔티티를 조회하지도, 반환하지도 않는다. 따라서 일반 쿼리문이므로 .class를 명시하지 않아야 함. 빼주면 해결된다

테스트용 더미 데이터 넣기 (no entitymanager with actual transaction available for current thread)
문제원인 빈 생명주기 콜백 메서드를 사용해서 더미 데이터를 DB에 넣으려고 하니 에러가 뜬다. no entitymanager with actual transaction available for current thread 구글링을 해보니 @PostConstruct에는 직접적으로 @Transactional을 적용할 수 없다고 한다. 그래서 인프런 커뮤니티에 달린 글을 찾아봤는데 찾은 내용이 다음과 같다. @PostConstruct는 해당 빈 자체만 생성되었다고 가정하고 호출됩니다. 해당 빈에 관련된 AOP등을 포함한, 전체 스프링 애플리케이션 컨텍스트가 초기화 된 것을 의미하지는 않습니다. 트랜잭션을 처리하는 AOP등은 스프링의 후 처리기(post processer)가 완전히 동작을 끝내서, 스프링 애플리케..

javax.persistence.NoResultException: No entity found for query
에러 로그 문제 원인 @Override public Member findByLoginId(String loginId) { return em.createQuery("select m from Member m where m.loginId = :loginId", Member.class) .setParameter("loginId", loginId) .getSingleResult(); } 쿼리의 결과값이 없을 때가 있을 수 있으니 try catch문으로 NoResultException 예외처리를 해주어야 한다 변경 후 @Override public Member findByLoginId(String loginId) { try{ return em.createQuery("select m from Member m wher..