알고리즘 50

[알고리즘] 임시반장 정하기 with Java, 3차원 배열에 대한 생각

원래 목표했던 대로 저번주에 2차원 배열까지 끝내려고 했지만, 이 문제가 밟혀서 목표를 달성하지 못했다.. 이 문제는 나에게 3차원 배열이 무엇인지 가르쳐준 문제다. 오늘 배운 것 1. 3차원 배열에 대한 생각 . 기준이 2개이다. 기존 2차원 배열에서는 기준이 1개인 것에 대한 비교였지만, 이건 기준 2개를 놓고 변수가 움직이며 if문을 순회하는 로직임을 알게 되었다. 2. 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); int[][] arr = new int[i+1][6]; for (i..

[알고리즘] 봉우리 with Java

주말맞이 알고리즘! 오늘은 결혼식 다녀와서 호다닥 오늘 일정 마무리 지어야겠다. 오늘 배운 것 1. 문제 풀이 . 딱히 알고리즘이라는 과정은 없었다. 그냥 논리적으로 생각해서 풀면 끝나는 문제였다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); int [][] arr = new int[i+2][i+2]; for (int j = 1; j < i+1; j++) { for (int k = 1; k < i+1; k++) { arr[j][k] = kb.nextInt(); } } solution(arr)..

[알고리즘] 격자판 최대합 with Java, 이중 for문

오늘 배운 것 1. 문제 풀이 import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); int[][] arr = new int[i][i]; for (int j = 0; j < arr.length; j++) { for (int k = 0; k < arr.length; k++) { arr[j][k] = kb.nextInt(); } } solution(i,arr); } private static void solution(int i, int[][] arr) { ..

[알고리즘] 등수구하기 with Java, 이중 for문

오늘 배운 것 1. 이중 for문 . for문을 순회할 때, 요소 하나를 기준으로 다른 배열요소들과의 관계성을 탐색하고싶을 때 사용하는 것 같다. 2. 문제 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); int[] arr = new int[i]; for (int j = 0; j < arr.length; j++) { arr[j] = kb.nextInt(); } solution(i,arr); } private static void solution(int i, int[] arr) { int[]..

[알고리즘] 점수계산 with Java

주말 알고리즘 공부쓰~ 오늘 배운 것 1. 문제 풀이 . 배열 0번째는 미리 계산해두고, 1번째부터 돌면서 하나 이전꺼 + 1해주는 로직을 구상하고 코드를 짯다. . 강의에서는 배열 자체도 잘 안쓰는 것 같다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); int[] arr = new int[i]; for (int j = 0; j < arr.length; j++) { arr[j] = kb.nextInt(); } solution(i,arr); } private static void solutio..

[알고리즘] 뒤집은 소수 with Java, 숫자뒤집기에 대한 생각

주말 맞이 알고리즘~ 정리하면서 푸니까 좀 더 수월한 느낌이다. 오늘 배운 것 1. 숫자 뒤집기 . 나는 stringbuilder 변환 후 reverse() 함수를 사용했다. . 강의에서는 %, /를 이용했다. int i1 = Integer.parseInt(arr[j]); int res = 0; while(i1>0){ int t = i1%10; res = (res*10) + t; i1 = i1/10; } 2. 문제 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); String[] arr = ..

[알고리즘] 에라토스테네스의 체 with Java, int[] 초기화

33데이날도 역시 알고리즘~ 오늘 배운 것 1. int[] 배열의 초기화는 0으로 되어있다. 2. 문제 풀이 . 일단 거르고, 다시 for문을 돌면서 갯수를 카운팅하려했음 -> 돌면서 한번에 카운팅 가능 import java.util.Scanner; public class Main { public static void solution(int str) { int[] arr = new int[str+1]; int answer = 0; for (int i = 2; i

[알고리즘] 가위 바위 보 with Java, else if 에 대한 생각

3.1 절 맞이 알고리즘 문제 풀이 진행 중이다. 배열 문제도 빠르게 마무리 짓고 기본을 탄탄히 할 수 있는 개발자가 되었으면 좋겠다. 오늘 배운 것 1. 문제 풀이 . else if 로직에 대한 이해도를 높이는 계기가 되었다. . 비기는 로직 > A가 이기는 로직 > else B가 이기는 로직 import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); ArrayList a = new ArrayList(); ArrayList b = new ArrayList..

[알고리즘] 보이는 학생 with Java

3.1 절 맞이 알고리즘 문제 풀이 진행 중이다. 배열 문제도 빠르게 마무리 짓고 기본을 탄탄히 할 수 있는 개발자가 되었으면 좋겠다. 오늘 배운 것 1. 머리속으로 알고리즘 그리기 . 시나리오 흐름대로 한번 쭉 진행하고, 알고리즘적으로 구현해야 할 코드가 무엇인지 대략적으로라도 생각해보는 자세가 필요한 듯하다. 2. 문제 풀이 import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); ArrayList integers = new ArrayList(); f..

[알고리즘] 큰 수 출력하기 with Java

배열편을 공부해보고 있다. 이번 편은 어려운 로직은 딱히 없어서 복습한다는 느낌으로 풀고 갔다. 오늘 배운 것 1. 문제 풀이 import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int i = kb.nextInt(); ArrayList integers = new ArrayList(); for (int j = 0; j < i; j++) { integers.add(kb.nextInt()); } solution(i,integers); } private static void solution(in..