Spring Batch 3 - Items(Writer)
·
Spring/Batch Programming
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 Job 2024.03.12 - [Spring/Batch Programming] - Spring Batch 도메인 용어, 실전 Spring Batch 도메인 lsdiary.tistory.com 이전 까지 Item 세가지 중 Reader에 대해서 알아 보았다. ..
Spring Batch 3 - Items(Reader)
·
Spring/Batch Programming
2024.03.13 - [Spring/Batch Programming] - Spring Batch Step Spring Batch Step 2024.03.13 - [Spring/Batch Programming] - Spring Batch Job Spring Batch Job 2024.03.12 - [Spring/Batch Programming] - Spring Batch 도메인 용어, 실전 Spring Batch 도메인 용어, 실전 2024.03.10 - [Spring/Batch Programming] - Spring Batch 실습( lsdiary.tistory.com 지난 글까지 Step에 대해서 전반적으로 알아봤다. 이번에는 예전에 직접 구현해봤던 Item 3개에 대해서 알아보고자 한다. ItemR..
[BAEKJOON] 10431번 줄세우기
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/10431 10431번: 줄세우기 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1 www.acmicpc.net 자기 앞에 자기보다 키가 큰 학생이 없다면 그냥 그 자리에 서고 차례가 끝난다. 자기 앞에 자기보다 키가 큰 학생이 한 명 이상 있다면 그중 가장 앞에 있는 학생(A)의 바로 앞에 선다. 이때, A부터 그 뒤의 모든 학생들은 공간을 만들기 위해 한 발씩 뒤로 물러서게 된다. 학생들이 뒤로 물러 난 걸음 수? 처음에는 정렬이 안될때마다 학생을 직접 집어넣어줘야하는줄 알고 까다롭다고 생각했다. 근데 조금만..
[BAEKJOON] 9655번 돌게임
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/9655 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 뭔가 정형적인 알고리즘으로 접근이 되지 않아서 직접 예시를 들어가며 풀어봤다. 돌 개수 이기는 사람 1 상근 2 창영 3 상근 4 창영 5 상근 규칙이 나왔다. 어차피 한번에 가져갈 수 있는 수는 1,3개로 제한되므로, 돌의 개수기 홀수일땐 상근이 이기고, 짝수일땐 창영이 이긴다. #include using namespace std; int n; //1 or 3 개씩 가져갈 수 있음 int main(){ cin >> n; if (n % 2) cout
[BAEKJOON] 1157번 단어 공부
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 가장 많이 쓴 영어 단어를 대문자로 출력하라. 사실 그냥 문자를 숫자로 취급한 아스키코드로 쉽게 풀어줄 수도 있지만, 저번에 map으로 이런 비슷한 문제를 풀어 봤던것 같아서 map을 써서 풀어 볼 것이다. key-value로 char-int로 두면 각 문자가 등장한 횟수를 쉽게 알 수 있다. #include #include using namespace std; string s; map m; //가장 많이 사용된 알파벳 2개이상일..
[BAEKJOON] 2292번 벌집
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 1번방 부터 n번방 까지의 최소거리를 구하는 문제이다. 접근방법은 규칙파악이었다. 뭔가 육각형으로 쭉 둘러쌓여있으니까, 숫자 6과 관련된 규칙이지 않을까 생각했다. 1부터 시작해서 맨바깥테두리를 한번씩 채울때 마다 몇개의 육각형이 있는지 세어 봤다. 1, 6, 2*6, 3*6, 4*6 ... 순이다. 점화식을 세워보면 6^k (k >=0 인 정수) 로 나타 낼수 있다. 뭔가 다 파악해놓고 1시간가량 머리가..
[BAEKJOON] 5073번 삼각형과 세 변
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/5073 5073번: 삼각형과 세 변 각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오. www.acmicpc.net 수학을 한지 꽤 오래되어서 삼각형의 조건을 만족하지 못하는 경우,,,? 를 몰라서 엄청 당황했다. 두변의 길이의 합이 나머지 한변의 길이보다 커야 삼각형이 된다. 나 중학교 나왔는데,,, 조건이 너무 많아서 구현하는데 헷갈렸다. 그리고 이 문제는 if문과 else-if문이 어디서 걸리는지 잘 판단 해야 한다. 아니면 while문 안에서 무한루프등에 빠질 수 있으니,, 특히 종료조건으로 if문은 따로! 빼줘야한다 #include using namespace std; int..
[BAEKJOON] 23971번 ZOAC 4
·
Algorithm/구현, 시뮬레이션
https://www.acmicpc.net/problem/23971 23971번: ZOAC 4 i행 j열 자리를 (i, j)라고 할 때, (1,1)에 참가자가 앉은 경우 다른 참가자는 (1,2), (2,1), (2,2) 자리를 제외한 나머지 자리에 앉을 수 있다. (2,2)의 경우는 (1,1)과 행 번호 및 열 번호의 차가 1보다 크 www.acmicpc.net 변수가 너무 많아서 읽는데 힘들었던 문제였다 h = 세로 w = 가로 n = 세로 차이 m = 가로 차이 정리하고 보니 별 거 아닌 조건이다,,, 아무튼! 문제의 질문은 h*w의 크기의 강의실에서 세로로 n칸 또는 가로로 m칸 떨어져서 수용할 수 있는 최대 수 를 구하면 된다. 생각보다 어려운데,,,? 라고 생각했는데 어떤 접근방법을 생각해볼까 ..
[BAEKJOON] 2613번 숫자구슬
·
Algorithm/Binary Search
https://www.acmicpc.net/problem/2613 2613번: 숫자구슬 첫째 줄에 구슬의 개수 N과 그룹의 수 M이 주어진다. 둘째 줄에는 각 구슬이 적혀진 숫자가 왼쪽부터 차례로 주어진다. N은 300 이하의 자연수, M은 N이하의 자연수이며, 구슬에 적혀진 숫자는 100 www.acmicpc.net 구슬 N개를 그룹 M개로 나눈다. 각 그룹은 무조건 구슬이 1개이상이다. 모든 경우의 그룹을 나눴을때, 그룹의 최대값이 나올 수 있는 경우의 수 중 최소일때를 찾는다. 접근 방법이 도저히 떠오르지 않았다. 각 경우의 수를 모두 구해야하는 완탐으로 접근해야 하나,,? N이 늘어날수록 어마무시하게 시간복잡도가 높아질게 뻔히 보이므로 알고리즘적으로 접근방법을 찾아야만 한다,,, 진짜 모르겠다 멍..
[BAEKJOON] 6236번 용돈 관리
·
Algorithm/Binary Search
https://www.acmicpc.net/problem/6236 6236번: 용돈 관리 현우는 용돈을 효율적으로 활용하기 위해 계획을 짜기로 하였다. 현우는 앞으로 N일 동안 자신이 사용할 금액을 계산하였고, 돈을 펑펑 쓰지 않기 위해 정확히 M번만 통장에서 돈을 빼서 쓰기로 www.acmicpc.net 모자라게 되면 남은 금액은 통장에 집어넣고 다시 K원을 인출한다.라는 조건에서 첫 번째 생각은 총 N일동 안 자신이 사용할 금액 중 가장 큰 값 이상이어야 문제조건 자체가 성립된 다는 것이다. 당연한 말인 게 남은 금액을 통장에 집어넣기 때문에 만약 사용할 금액 중 가장 큰 값보다 작다면, K원 인출, K원 집어넣기 무한반복 ,,,,,,, 이렇게 첫 번째 조건은 만족한 것 같고, 두 번째로는 정확히 M..