일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 1764 자바
- BFS
- 자바 28278
- 2164 자바
- 10807 자바
- 백준 1764 자바
- 자바 1003
- 백준
- 2748 자바
- IAM Identity Center
- 자바 2346
- 2798 자바
- 1010 자바
- 그리디
- 28278 스택 2
- 10810 자바
- 백준 28278 자바
- IAM 사용자
- dfs
- 2346 풍선 터뜨리기
- 데보션영 3기
- 백준 10866 자바
- 티움투어
- 10813 자바
- 백준 2346 자바
- 코딩테스트
- 자바 2164
- 파이썬
- 자바 10866
- 자바
- Today
- Total
목록2024/08 (21)
자두의 데브로그
https://school.programmers.co.kr/learn/courses/30/lessons/120834 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제는 크게 어렵지 않았지만 문자열을 거꾸로 뒤집는 걸 함수를 사용하려고 하니 모르겠어서 해당 부분은 다른 블로그를 참고했다. StringBuffer로 받아서 reverse 함수를 사용하고, toString 으로 문자열로 변경하면 된다. class Solution { public String solution(int age) { String answer = ""; whi..

https://school.programmers.co.kr/learn/courses/30/lessons/42862?language=java# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 파이썬으로 풀었던 문젠데 너무 바빠지기 전에 그리디 쉬운 문제 하나 풀고 싶어서 풀어봤다. 근데... 왜 틀린 건지 모르겠는데 기괴한 코드 하나 작성했다. 100점 만점에 90점이 나왔는데 어떤 부분이 틀렸는지 반례를 못 찾겠어서 일단 올려두고.. import java.util.*;class Solution { public int solution(int n, int[]..

https://www.acmicpc.net/problem/1325 일단 이 문제는 단방향 그래프이기 때문에 한 쪽에만 갈 수 있는 정점에 대한 정보를 저장해야되는 게 특징이었다. 근데 나는 아직도 ArrayList 안에 배열 넣는 걸 선언하는 게 어렵다. 헷갈려요.., 무튼 입력 잘 받아주고 나서 처음에 dfs로 구현을 했는데.. 채점을 돌렸더니 1분동안 채점을 하는 엄청나게 시간이 오래 걸리는 코드를 구현해버렸다. 이와중에 dfs로 구현할 때 for문으로 구현하면 시간초과가 난다고 한다. dfs 구현 자체는 어렵지 않았다. 원래 알고 있는 dfs대로 잘 구현만 하면 됐고, 가장 많은 컴퓨터를 해킹하는 수를 미리 저장해두고 해당 값을 갖는 인덱스를 출력하는 방식으로 구현했다.import java.io.*..
https://www.acmicpc.net/problem/1697 약간 오랜만에 이런 새로운 문제 푸니까 어려웠는데 문제를 풀기 전 어떤 식으로 문제 풀이를 생각했냐하면....동생이 있는 곳으로 이동할 수 있는 방법이 총 세 가지이기 때문에 bfs에서 탐색할 때 첫 번째 위치에서 갈 수 있는 곳이 총 3개다. 그러니까 상하좌우 문제처럼 다 가봐야한다. 만약 변경한 값이 동생이 있는 곳과 동일하면 바로 return하고 아니라면 queue에 add 하고 변경된 값의 인덱스에 해당하는 visited 값에 1을 더해주면 되는 문제였다. 이 문제는 꼭!!!!! 다시 풀어보자. import javax.management.Query;import java.io.*;import java.util.*;public clas..
calico를 설치하기 위해 tigera-operator.yaml 을 create 했을 때 kubectl get pods --all-namespaces 로 확인한 tigera-operator ns에 해당하는 pod가 evicted 상태로 아주 많이 생성되어있는 것을 확인했다. 이렇게 된 이유는 원래 tigera-operator에 해당하는 pod는 하나만 생성되어야 하는데 내가 만든 vm의 디스크 자원이 부족해서 강제로 추출된 pod가 잔뜩 만들어진 것이다. 이를 해결하기 위해서는 /에 해당하는 리스크 자원을 늘려주면 된다.# 현재 디스크 자원 할당량 확인df -h# 늘리고 싶은 용량 작성sudo lvextend -L{늘릴 용량} /dev/mapper/ubuntu--vg-ubuntu--lv# 적용sudo ..
https://www.acmicpc.net/problem/11725 dfs나 bfs로 풀면 금방 풀 수 있는 문제 같았다. 근데 오랜만에 상하좌우로 탐색하는 게 아니라 데이터를 ArrayList 배열에 저장해서 푸는 문제였어서 처음 입력 받는 걸 헤맸다. ArrayList가 Integer 형태로 받아서 for문에서 크기 비교가 안됐었는데 크기 비교할 필요 없이 array[x] 내에 있는 값을 가져오면 되는 거였어서 for(int i: array[x]) 이런 식으로 구현하면 됐었다. 예를 들어 가장 처음에 루트 노드인 1이 들어간다면, 예시로 1 4 를 입력 받고 있었으니, visited[1]은 true가 되며 i는 4가 되고, 그럼 visited[4]는 방문하지 않았으니 parent[4]는 1이 되는 방..
프로젝트를 여러 번 재배포하다보면 nohup.out 내에 로그가 엄청나게 많이 쌓이게 된다. 도대체 언제... 이 로그가 출력된 건지도 모를 만큼,,, 사실 CI/CD 파이프라인 통해서 통합 및 배포 자동화를 구현해뒀다면 관련 설정 파일에 nohup.out을 매번 초기화하는 코드를 넣을 수도 있겠지만 내 프로젝트의 경우, 아직 배포 자동화를 위한 작업을 하지 않았기 때문에 재배포를 할 때마다 nohup.out을 초기화해야할 필요가 있었다. 그럴 때는 nohup.out을 냅다 삭제하지 말고 nohup.out은 유지하되, 내부 내용을 빈 문자열로 저장하여 깔끔하게 초기화하는 방식을 사용하자. 코드는 아래와 같다.echo ' ' > nohup.out nohup으로 프로젝트를 실행 중에 nohup.out을 비우..
SpringSecurity 를 사용하여 SpringBoot 프로젝트를 구현하던 중 모든 POST 요청이 forbidden 상태인 것을 확인했다. GET은 되는데 DB에 접근하여 데이터를 바꾸는 요청들(POST, PATCH 등...)에 대해서는 왜 다 제한된 건지 찾아보다가 SecurityConfig 를 수정해야된다는 것을 깨달았다.csrf().disabled(); SpringSecurity가 디폴트로 csrf에 대한 보안을 자동적으로 실행하기 때문에 POST나 DB에 접근하는 요청을 제한하면서 발생하는 문제였다. 따라서 csrf를 disable로 꺼주면 해당 문제가 해결된다. *CSRF Cross-Site Request Forgery: 사이트 간 요청 위조웹 애플리케이션 취약점 중 하나사용자가 자신의 의..
https://www.acmicpc.net/problem/2178 지나가는 최소 칸 수를 구해야하기 때문에 dfs와 bfs 중 bfs로 풀어야 한다고 한다. dfs로 풀어보진 않았지만 dfs로 풀면 시간 초과가 난다는 소식이 ... 푸는 방법은 크게 어렵지 않고 동일하게 상하좌우 방향 지정해서 인접한 곳을 방문하는 방식으로 풀면 된다. (0, 0)에서 시작하면 되고 지나가는 길마다 직전에 지나왔던 길의 값에 1을 더해주면 가장 오른쪽 아래 즉, 마지막으로 방문해야하는 곳에 도달했을 때 몇 개의 칸을 지나왔는지 알 수 있다. import java.io.*;import java.util.*;public class Main { static int[] dx = {0, 0, 1, -1}; static ..