알고리즘 분류/Step4 1차원 배열

알고리즘 분류/Step4 1차원 배열

</Step4_10> 1546 평균 JAVA

오늘은 마침 컬렉션 프레임워크에 대해서 공부했기에, 이를 이용하여 문제를 풀어봤다. 이 문제 또한 매우 쉽지만, 나는 오늘 배운걸 복습할 겸, 하드코딩?을 해보았다. import java.io.*; import java.util.ArrayList; import java.util.Collections; import java.util.StringTokenizer; public class Step4_10 { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { int n = Integer.valueOf(br.readLine()); // 세준이가 본 ..

알고리즘 분류/Step4 1차원 배열

</Step4_9> 10811 바구니 뒤집기 JAVA

이번 문제는 입력한 범위에 따른 배열의 범위를 뒤집어야 하는 문제이다, 요즘 드는 생각이 BufferedReader은 문자열로만 읽어오기 때문에, 공백 구분으로 입력해야할 때나, 형변환이 필요할 때는 정말 쓸데없이 코드가 길어지는거 같다.. 앞으론 적절히 Scanner를 사용해야겠다는 생각이 들었다. 어쨌든 내가 작성한 코드는 아래와 같다. 문제의 조건은 첫번째 줄에 바구니의 개수 N 과, 바구니를 바꿀 횟수 M이 주어진다. 따라서 첫줄에 N과 M을 입력 받았고, 각 바구니의 요소를 바구니의 번째수와 동일하게 초기화 하였다. 그리고 M번 만큼 반복을 진행하는데, 반복될 때 마다, i와j 값을 받아야 하므로 반복문 내에 선언하였다. 마지막으로 바구니를 뒤집어야 하는데 바구니가 만약 5개라면 1-5, 2-4..

알고리즘 분류/Step4 1차원 배열

</Step4_8> 3052 나머지 JAVA

이번 문제 또한 이전문제와 비슷하다는 생각이 든다. 우선 이 문제는 수 10개를 입력 받은 후, 42로 나눈 나머지들을 구하여, 서로 다른 값이 몇개인지 출력하면 된다. 42로 나눴을 때, 나머지의 총 개수는 0~41 > 41개이다. 따라서 각 나머지값에 해당하는 배열에 true를 저장한다. import java.io.*; public class Main { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); boolean[] numCheck = new boolean[42]; for(int i = 0; i < 10; i++) { try { numChec..

알고리즘 분류/Step4 1차원 배열

</Step4_7> 5597 과제 안 내신 분..? JAVA

이번 문제는 매우 간단하다. 배열 수도 조건에 정해져 있으며, 제출한 학생의 수도 미리 정해져 있기에 쉽게 풀 수 있다. package Step4; import java.io.*; public class Step4_7 { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); boolean submit[] = new boolean[31]; for(int i = 1; i

알고리즘 분류/Step4 1차원 배열

</Step4_6> 10813 공 바꾸기 JAVA

우선 코드를 공유하기 앞서, 이런 유형의 문제는 반복문에서부터 매우 많이 풀었기에 많이들 쉽게 풀었으리라고 생각한다. import java.io.*; import java.util.*; public class Step4_6 { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { StringTokenizer st = new StringTokenizer(br.readLine()," "); int[] numArr = new int[Integer.parseInt(st.nextToken())]; // 바구니 수 int times = Integer.pa..

알고리즘 분류/Step4 1차원 배열

</Step4_5> 10810 공 넣기 JAVA

이 문제는 매우 간단하다고 느꼈다. 이 문제는 그냥 1. N개의 공을 넣을 정수형 배열 생성 2. M번 반복문 돌리기 3. 반복문 내에 i~j번 까지 k번호 공을 넣음 버퍼 기능을 쓰다 보니, 어쩌다 코드가 길어 보이긴 하는데, Scanner로 입력 받으면 StringTokenizer 클래스를 사용 안해도 된다. 하지만 놀라웠던 건, Scanner를 사용한 코드가 절반 정도 짧아졌는데 아래 코드가 속도가 훨씬 빨랐다.. import java.io.*; import java.util.*; public class Step4_5 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(n..

알고리즘 분류/Step4 1차원 배열

</Step4_4> 2562 최댓값 JAVA

이번 문제는 입력값의 최댓값과 위치를 찾는 문제이다. 바로 작성한 코드를 올리겠다. import java.util.*; import java.io.*; public class Step4_3 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int[] N = new int[9]; int max = N[0]; int index = 0; for(int i = 0; i < N.length; i++) { N[i] = Integer.parseInt(br.readLine()); if(max < N[i]) max = N[i]; ..

알고리즘 분류/Step4 1차원 배열

</Step4_3> 10818 최소, 최대 JAVA

이번 문제를 하면서 여러 클래스에 더 많은 깨달음을 얻은 거 같다. 우선 나는 자바를 공부를 하기 전에, 아래와 같이 지저분하게 코드를 작성했던 것을 볼 수 있다. import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[] numArr = new int[N]; for(int i = 0; i < numArr.length; i++) { numArr[i] = sc.nextInt(); } int max = numArr[0]; int min = numA..

알고리즘 분류/Step4 1차원 배열

</Step4_2> 10871 X보다 작은 수 JAVA

매우 간단한 문제이므로 설명은 생략한다. import java.util.*; public class Step4_2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(), x = sc.nextInt(); int[] numArr = new int[N]; for(int i = 0; i < N; i++) { numArr[i] = sc.nextInt(); if(numArr[i] < x) System.out.print(numArr[i] + " "); } } }

알고리즘 분류/Step4 1차원 배열

</Step4_1> 10807 개수 세기 JAVA

간단한 문제이다. 정수를 입력받아 배열에 저장 후, 찾으려는 숫자와 동일할 때마다 count 해주면 된다. import java.util.*; public class Step4_1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 정수의 개수 int[] numArr = new int[N]; // 정수를 보관 for(int i = 0; i < N; i++) { numArr[i] = sc.nextInt(); } int v = sc.nextInt(); // 찾으려는 숫자 int count = 0; for(int i = 0; i < numArr.length; i++) { if..

Berkleeboston
'알고리즘 분류/Step4 1차원 배열' 카테고리의 글 목록