본문 바로가기

전체 글59

Java Array Sorting 정리 파이썬과 다르게 자바는 ArrayList같은것을 사용하지않으면 단순array에선 바로 sort하는 기능이 없고 util 라이브러리를 import해서 사용해야한다. 오늘은 내가 알고리즘 테스트를 준비하는 겸.. 기본 자료구조에 대해 정리해보고자한다. 1. int array 정렬 Arrays.sort()를 사용하지 않는 경우 이 경우 선택정렬의 알고리즘이기때문에 시간복잡도 O(n^2)이다. 이렇게 정렬했다가는 알고리즘테스트에서 폭망한다. int[] arr = {5, 3, 8, 2, 1, 4}; int n = arr.length; for (int i = 0; i arr[j + 1]) { //.. 2023. 11. 18.
[프로그래머스/그리디] 디스크 컨트롤러 우선 문제에서 요구하는 CS지식이 있어서 문제를 이해하는데 한참 걸렸다. 어떤 알고리즘을 사용해야하는가? 일단 문제를 보다보면 job이 이렇게 주어지니 job = [작업이 요청되는 시점, 작업의 소요시간]이라고할때 job을 요청되는 시점 기준으로 정렬해야한다는건 직관적으로 이해가 가능하다. 그렇다면 그 다음부터는 어떻게 작업해야할까? 우선 시뮬레이션처럼 코드로 요청사항을 구현한다고 치자 1. 맨처음 작업해야하는건 [0,3]일거다. 2. 그러면 0번째의 작업이 3초동안 작업하는동안 그 다음 요청들을 대기열에 걸어둔다. (3초동안 1번째 요청과 2번째 요청이 들어와있을것이다.) 3. 0번째의 작업이 끝나고나면 그 다음 요청을 작업한다. 여기서 헷갈리는건 3번이다. 다음 요청인 [1,9]가 아닌 [2,6]을 .. 2023. 11. 17.
[백준2559/투포인터] 수열 https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 문제가 워낙 쉬워서 문제풀이 구상없이 바로 코딩했다. 1. 아이디어 - 연달아있는 세개를 더한값과 그 다음값을 더하고 인덱스 1의 값을 뺀값이 같은지 비교하며 max값 갈아치우기 2. 시간복잡도 - O(N) = 100,000 < 2억 (가능) 3. 변수 - max값 : int - 온도리스트 : int[] - 앞 포인터의 합, 뒷포인터의 합 를 기준으로 풀어보았다. 1트 public c.. 2023. 11. 15.
[백준14503/시뮬레이션] 로봇 청소기 문제풀이 구상 -> while문을 돌면서 전진시 방위 덧셈, 후진시 방위 뺄셈 1트 public class simulation14503 { static int N; static int M; static int[][] room; static int[] nowPoint; static int side; static int[] dy = {-1, 0, 1, 0}; //우하좌상 동남서북 -> 북동남서0123 static int[] dx = {0, 1, 0, -1}; static int cleanUpCount; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 첫 줄에서 N과 M을 읽어옵니다. N = scanner.. 2023. 11. 14.
bfs, dfs 함수에서 (y,x)로 받아주는 이유 def dfs(y, x): global each each += 1 for k in range(4): ny = y + dy[k] nx = x + dx[k] if 0 2023. 11. 14.
지그재그 로그인 오류 왜 발생한걸까? 이번 지그재그에서 다른 사람 계정으로 로그인되는 등 보안이슈가 있었죠. 해당 원인은 Redis문제 였던 걸로 보이는데요. 이미 Chat GPT를 사용하는 OPEN AI에서도 비슷한 문제를 일으킨 적이 있어 관련 분석 기사가 있습니다. https://thehackernews.com/2023/03/openai-reveals-redis-bug-behind-chatgpt.html?m=1 OpenAI Reveals Redis Bug Behind ChatGPT User Data Exposure Incident OpenAI discloses a Redis bug causing certain ChatGPT users' personal info and chat titles to be exposed. thehackerne.. 2023. 11. 10.