본문 바로가기
728x90
반응형

java108

구름 알고리즘 챌린지 후기 구름에서 "알고리즘 먼데이 챌린지"를 진행하였습니다. 알고리즘 학습 및 개발직군 학습을 하면서 취업 준비하는 알고리즘 톡방을 통해 소식을 접하였고, 10/3일 알고리즘 챌린지가 시작하는 날부터 매주 꾸준히 문제풀이를 진행하였습니다. 주차별 난이도는 이렇게 분배되었고(맞는진 모르겠음), 매주 4문제가 나왔습니다. 그 중 1~2번은 알고리즘을 어느정도 학습을 한 상태라면 풀 수 있었고, 3번은 조금 생각해야 되는 문제, 4번은 심화 알고리즘이 나왔던 걸로 기억합니다.(4번은 많이 풀지 못함...) 문제들 중, 몇몇 문제들이 "필요 없는 설명이 들어가 있음" and "이상한 방식으로 해야지만 풀림" and "데이터가 부족하여 시초가 나와야 하는데 맞음" 등 문제가 있었지만, 저는 항상 첫날에 풀어가지고 다른 .. 2022. 12. 2.
int[] 활용하기 bfs나 dfs 등 ArrayList나 Queue에 x좌표, y좌표, 크기, 길이 등 여러 가지 값들을 한번에 넣을 때 보통 class Node{ int x, y, price; } 이런 식으로 사용하게 됩니다. 그러나 매번 문제를 풀 때 적어두기 귀찮고, 입력할 값들의 수가 변경할 때, 또 선언해 줘야 하는 귀찮은 문제가 발생하게 됩니다. 그 때 이 방식을 이용하면 간단하게 문제를 풀 수 있습니다. Queue queue = new LinkedList(); queue.add(new int[] {x, y, 0}); 이럴 경우 queue.poll()을 하게 되면 int[]의 형태로 나오게 되고 int[] now = queue.poll(); int nx = now[0]; int ny = now[1]; int p.. 2022. 1. 7.
JAVA의 깊은 복사, 얕은 복사 #얕은 복사 1번을 2번에 복사할 경우 1번이 수정이 일어나거나 2번이 수정이 발생하면 둘다 수정이 된다. 얕은 복사는 주소값을 복사하기 때문에 주소로 값을 참조하여 값이 변경되면 해당 값을 참조하고 있는 배열들의 값이 변경된다. int[] a = {1, 2, 3}; int[] b = a; b[0] = 2; 를 한 후 System.out.println(Arrays.toString(a)); System.out.print(Arrays.toString(b)); 를 할경우 [2, 2, 3] [2, 2, 3] 을 출력하게 된다. #깊은 복사 1번을 2번에 복사할 경우 1번이 수정이 일어나거나 2번이 수정이 발생해도 값은 수정이 발생한 곳만 변경된다. 주소값을 참조하는 것이 아닌, 새로운 메모리 공간에 값을 복사하.. 2021. 12. 30.
[백준] 14226번 : 이모티콘(JAVA) https://www.acmicpc.net/problem/14226 14226번: 이모티콘 영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다. 영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만 www.acmicpc.net 풀이 [화면에 있는 이모티콘 갯수, 클립보드에 있는 이모티콘 갯수] 형태로 값을 저장하면서 해당 규칙을 수행해 나가면서 bfs를 돌리면됩니다. 아무 입력없이 처음에 화면에 1을 입력해서 [1,0]으로 시작합니다. 1. 화면에 이모티콘을 클립보드에 복사 => [x, y] -> [x, x] 2. 클립보드에 있는 모든 이모티콘을 화면에 붙여넣기 => [x, y] -> [x + y, y] 3. 화면에 있는.. 2021. 12. 28.
728x90
반응형