본문 바로가기

알고리즘

(105)
입력 받은 정수형 배열(몸무게)을 통해 놀이기구의 탑승 가능 여부를 출력하는 알고리즘 import java.io.*; import java.lang.*; import java.util.*; public class Main { public static final Scanner scanner = new Scanner(System.in); /** * 동아리 멤버들의 탑승 가능 여부를 출력하는 함수 * * @param data 각 멤버들의 몸무게 data[0] ~ data[n-1] * @param n 멤버들의 수 * @param p 놀이기구 탑승 가능 체중 제한 * @param q 놀이기구 최대 하중 */ public static void solve(int[] data, int numOfMember, int weightRestriction, int MaxWeight){ int S = 0; //탑..
입력받은 정수형 배열에서 찾아야 하는 값과 일치하는 값의 개수를 반환하는 알고리즘 시나리오 : 많은 인파 중 친구 2명을 찾아야하는데, 키를 이용해 후보군을 추려 친구를 찾아보려 한다. import java.io.*; import java.lang.*; import java.util.*; public class Main { public static final Scanner scanner = new Scanner(System.in); /** * * @param data 각 사람들의 키를 저장한 배열 * @param n 사람들의 수 * @param m 찾아야 하는 첫번째 사람의 키 * @param s 찾아야 하는 두번째 사람의 키 * @return 첫번째 혹은 두번째 사람과 키가 일치하는 사람의 수 */ public static int getCount(int[] data, int n, i..
입력 받은 정수 중 최댓값 구하기 import java.io.*; import java.lang.*; import java.util.*; public class Main { public static final Scanner scanner = new Scanner(System.in); /** * 배열의 최대값을 계산하는 함수. * * @param data * @param n * @return data[0] ~ data[n-1]중 최대값. */ public static int getMax(int[] data, int n) { int maxValue = data[0]; for(int i = 0; i < n; i++){ if(maxValue < data[i]){ //data[i]가 maxValue보다 크다면 maxValue = data[i]; ..
입력 받은 정수들의 합 구하기 import java.io.*; import java.lang.*; import java.util.*; public class Main { public static final Scanner scanner = new Scanner(System.in); /** * 정수 배열의 모든 원소의 합을 계산하는 함수 * * @param data * @param n * @return data[0] ~ data[n-1]의 합 */ public static int getSum(int[] data, int n) { //배열의 크기 n과 정수형 배열 data를 인자로 받아 배열의 값을 모두 더한 후 반환하는 메서드 int answer = 0; for(int i = 0; i < n; i++){ //정수형 배열 data의 값을 ..
입력 받은 두 정수 중 더 큰 값 반환하기 import java.io.*; import java.lang.*; import java.util.*; public class Main { public static final Scanner scanner = new Scanner(System.in); /** * 두 정수 a와 b중 더 큰 값을 반환하는 함수 * * @param a * @param b * @return a와 b중 더 큰 값 */ public static int getMax(int a, int b) { //경우의 수 정의 : a > b - a, a == b - a, a =b) { return a; }else{ return b; } } public static void main(String[] args) throws Ex..
정수 3개를 입력 받고 합계를 반환하는 알고리즘 import java.io.*; import java.util.*; import java.lang.*; class Main { public static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int tc = scanner.nextInt(); //정수형 변수 tc에 입력할 횟수를 입력받음, scanner.nextLine(); //문자열을 입력받음, nextLine() = '\n'(공백)을 포함하는 한 라인을 읽고 '\n'을 제외한 값을 반환 String[] threeNumList = new String[tc+1]; //문자열 배열 생성(크기는 입력받은 tc보다 +1) for( int i ..
입력 받은 수를 반대 순서로 출력 import java.lang.*; import java.io.*; import java.util.*; class Main { public static final int MAX_N = 1000; public static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int n = scanner.nextInt(); ArrayList arr = new ArrayList(); for(int i = 0; i = 0; i--) { if(i < n - 1) { System.out.printf..
입력 횟수 만큼 출력문 출력하기 import java.util.*; class Main { public static Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int n; n = scanner.nextInt(); //n = "Goorm" 을 출력할 횟수 for(int i = 0; i < n; i++) { System.out.print("Goorm"); if(i != n - 1){ //i가 마지막 실행 직전까지 System.out.print(", "); } } } } 업그레이드 ver. import java.util.*; class Main { public static Scanner scanner = new Scanner(System..