[BAEKJOON] 1509번 팰린드롬 분할
·
Algorithm/Dynamic Programming
https://www.acmicpc.net/problem/1509 1509번: 팰린드롬 분할 세준이는 어떤 문자열을 팰린드롬으로 분할하려고 한다. 예를 들어, ABACABA를 팰린드롬으로 분할하면, {A, B, A, C, A, B, A}, {A, BACAB, A}, {ABA, C, ABA}, {ABACABA}등이 있다. 분할의 개수의 최솟값을 출력하 www.acmicpc.net 문제조건 어떤 문자열을 팰린드롬으로 분할한다. 분할된 수의 최솟값을 출력 팰린드롬이란? 어떤 문자가 있을때, 거꾸로 뒤집어서 읽어도 똑같은 문자를 의미한다. ex) 기러기 ☞ 기러기(O) cf) 거북이 ☞ 이북거(X) 이 문제에서 핵심은 문자가 입력으로 들어왔을때, 문자열안에서의 모든 경우의수를 탐색해서 팰린드롬인지 각각 파악해야..
Spring으로 결제서비스 만들기(3)
·
Spring/결제
2024.03.27 - [Spring/결제] - Spring으로 결제서비스 만들기(2) Spring으로 결제서비스 만들기(2) 2024.03.27 - [Spring/결제] - Spring으로 결제서비스 만들기 준비(1) Spring으로 결제서비스 만들기 준비(1) 시나리오 - 고객이 유료 API를 사용 - 서비스팀은 유료 API 사용 이력 남김 - 유료 API 사용 이력을 lsdiary.tistory.com 고객이 유료 API를 사용한 정보에 대해서는 csv파일로 만들었다. 이제 결제한 정보에 대해서 특정 고객에게 결제대금등 정보를 줄 API를 만들것이다. 먼저 API를 만들기 위해 필요한 정보를 담은 클래스이다. SettleDetail.java @Entity @NoArgsConstructor @ToSt..
Spring으로 결제서비스 만들기(2)
·
Spring/결제
2024.03.27 - [Spring/결제] - Spring으로 결제서비스 만들기(1) Spring으로 결제서비스 만들기(1) 시나리오 - 고객이 유료 API를 사용 - 서비스팀은 유료 API 사용 이력 남김 - 유료 API 사용 이력을 파일로 정산팀에게 전달 (임시로 랜덤 데이터 생성) // 고객번호, url, 상태, 생성일 - 정산팀은 1일 lsdiary.tistory.com 이전글에서는 정산팀은 1일 단위로 정산이라는 조건까지 구현을 완료했다. 매주 금요일 1주일치 1일 정산을 집계해서 DB에 저장 후, 고객사에 이메일 보냄 // 고객번호, 서비스번호, 횟수, 요금 이번에는 위 조건에 대해 확장을 해보도록 한다. 일주일치 csv파일을 만들어야하니 7개의 Worker Step을 만드는 Patition..
Spring으로 결제서비스 만들기(1)
·
Spring/결제
시나리오 - 고객이 유료 API를 사용 - 서비스팀은 유료 API 사용 이력 남김 - 유료 API 사용 이력을 파일로 정산팀에게 전달 (임시로 랜덤 데이터 생성) // 고객번호, url, 상태, 생성일 - 정산팀은 1일 단위로 정산 - 매주 금요일 1주일치 1일 정산을 집계해서 DB에 저장 후, 고객사에 이메일 보냄 // 고객번호, 서비스번호, 횟수, 요금 해야할 것 API호출 이력 파일 만드는 배치 일 단위 정산 배치 주 단위 정산 배치 먼저 결제 도메인을 만들었다. ApiOrder.java @Data @NoArgsConstructor public class ApiOrder { public String id; public Long customerId; private String url; private ..
[BAEKJOON] 1927번 최소 힙
·
Algorithm/Priority_Queue
https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제조건 배열에 자연수 x를 넣는다. 배열에서 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다. 우선 입/출력이 많이 일어나기 때문에 입출력에 대해서 시간을 줄여줘야한다. 다들 많이 알고 있는 단축 코드이다. ios::sync_with_stdio(false); cin.tie(0); https://dingcoding.tistory.com/62 ios::sync_with_st..
[BAEKJOON] 22233번 가희와 키워드
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/22233 22233번: 가희와 키워드 1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을 www.acmicpc.net 문제조건 메모장에 키워드가 적혀있다.(중복X) 블로그에 글을쓰면 메모장에서 사라진다. 키워드가 , (쉼표)로 구분해서 주어진다. 블로그에 전부 글을 쓴뒤 메모장에 남은 키워드의 개수는? 키워드를 미리 map에 저장해두고, ","(콤마)를 만날때마다 단어를 만들어서 map에 있는 단어인지 체크만 하는 간단한 구현문제이다. #include #include #inclu..
[BAEKJOON] 20310번 타노스
·
Algorithm/Greedy
https://www.acmicpc.net/problem/20310 20310번: 타노스 어느 날, 타노스는 0과 1로 이루어진 문자열 $S$를 보았다. 신기하게도, $S$가 포함하는 0의 개수와 $S$가 포함하는 1의 개수는 모두 짝수라고 한다. 갑자기 심술이 난 타노스는 $S$를 구성하는 문자 www.acmicpc.net 문제조건 0과 1로만 이루어진 문자열 S가 있음 0과 1의 개수가 각각 짝수개임 각각 절반의 개수를 제거했을때, 사전순으로 가장 빠른 문자열 구하기 1분만에,,? 풀었나,,? 이렇게 쉬운게 왜 정답률이 50%가 안되지 라고생각하며 풀었다. #include #include using namespace std; //S가 포함하는 0과 1의 개수 모두 짝수 //절반 제거후 사전순으로 가장..
Spring Batch 확장
·
Spring/Batch Programming
2024.03.25 - [Spring/Batch Programming] - Spring Batch 3 - Items(Processor) Spring Batch 3 - Items(Processor) 2024.03.20 - [Spring/Batch Programming] - Spring Batch 3 - Items(Writer) Spring Batch 3 - Items(Writer) 2024.03.20 - [Spring/Batch Programming] - Spring Batch 3 - Items(Reader) Spring Batch 3 - Items(Reader) 2024.03.13 - [Spring/Batch Programming] - Spring lsdiary.tistory.com 이때 까지 Sprin..
Spring Batch 3 - Items(Processor)
·
Spring/Batch Programming
2024.03.20 - [Spring/Batch Programming] - Spring Batch 3 - Items(Writer) Spring Batch 3 - Items(Writer) 2024.03.20 - [Spring/Batch Programming] - Spring Batch 3 - Items(Reader) Spring Batch 3 - Items(Reader) 2024.03.13 - [Spring/Batch Programming] - Spring Batch Step Spring Batch Step 2024.03.13 - [Spring/Batch Programming] - Spring Batch Job Spring Batch Jo lsdiary.tistory.com 이전까지 Item 삼총사의 Re..
[BAEKJOON] 19637번 IF문 좀 대신 써줘
·
Algorithm/Binary Search
https://www.acmicpc.net/problem/19637 19637번: IF문 좀 대신 써줘 첫 번째 줄에는 칭호의 개수 N (1 ≤ N ≤ 105)과 칭호를 출력해야 하는 캐릭터들의 개수 M (1 ≤ M ≤ 105)이 빈칸을 사이에 두고 주어진다. (1 ≤ N, M ≤ 105) 두 번째 줄부터 N개의 줄에 각 칭 www.acmicpc.net 문제조건 N개의 줄에 각 칭호의 이름과 칭호의 상한 값이 주어진다. 칭호는 전투력 상한값의 비내림차순으로 주어진다. M개의 줄에 걸쳐 캐릭터의 전투력에 맞는 칭호를 입력 순서대로 출력한다. 어떤 캐릭터의 전투력으로 출력할 수 있는 칭호가 여러 개인 경우 가장 먼저 입력된 칭호 하나만 출력한다. 처음 봤을때 너무 쉬워서 빠르게 구현부터했다. #include..