diff --git "a/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q1138.java" "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q1138.java" new file mode 100644 index 0000000..1808c8a --- /dev/null +++ "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q1138.java" @@ -0,0 +1,50 @@ +package Greedy; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.Arrays; +import java.util.StringTokenizer; + +public class Q1138 { + + public static void main(String[] args) throws IOException { + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int N = Integer.parseInt(br.readLine()); + String input = br.readLine(); + StringTokenizer st = new StringTokenizer(input); + int[] arr = new int[N]; + + for(int i = 0; i < N; i++) { + arr[i] = Integer.parseInt(st.nextToken()); + } + + int[] result = new int[N]; + Arrays.fill(result, -1); + + for(int i = 0; i < N; i++) { + int count = 0; + for(int j = 0; j < N; j++) { + if(result[j] == -1) { + if(count == arr[i]) { + result[j] = i + 1; + break; + } + count++; + } + } + } + + StringBuilder sb = new StringBuilder(); + for(int i = 0; i < N; i++) { + sb.append(result[i]).append(" "); + } + bw.write(sb.toString()); + bw.flush(); + } + +} diff --git "a/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q20413.java" "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q20413.java" new file mode 100644 index 0000000..c3b6a91 --- /dev/null +++ "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q20413.java" @@ -0,0 +1,60 @@ +package Greedy; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; + +public class Q20413 { + private static int B = 0; + private static int S = 0; + private static int G = 0; + private static int P = 0; + private static int D = 0; + + public static void main(String[] args) throws IOException { + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int N = Integer.parseInt(br.readLine()); + String range = br.readLine(); + String degree = br.readLine(); + String[] rangeArr = range.split(" "); + + B = Integer.parseInt(rangeArr[0]) - 1; + S = Integer.parseInt(rangeArr[1]) - 1; + G = Integer.parseInt(rangeArr[2]) - 1; + P = Integer.parseInt(rangeArr[3]) - 1; + D = Integer.parseInt(rangeArr[3]); + + String[] degreeArr = degree.split(""); + int[] spendArr = new int[N]; + for(int i = 0; i < N; i++) { + if(i == 0 || degreeArr[i].equals("D")) { + moneySpend(degreeArr, spendArr, i); + } else { + moneySpend(degreeArr, spendArr, i); + spendArr[i] -= spendArr[i - 1]; + } + } + + int result = 0; + for(int i : spendArr) { + result += i; + } + + bw.write(String.valueOf(result)); + bw.flush(); + } + + private static void moneySpend(String[] degreeArr, int[] spendArr, int i) { + switch(degreeArr[i]) { + case "B": spendArr[i] = B; break; + case "S": spendArr[i] = S; break; + case "G": spendArr[i] = G; break; + case "P": spendArr[i] = P; break; + case "D": spendArr[i] = D; + } + } +} diff --git "a/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q2697.java" "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q2697.java" new file mode 100644 index 0000000..bfb5522 --- /dev/null +++ "b/\354\206\241\354\236\254\355\233\210/java/src/Greedy/Q2697.java" @@ -0,0 +1,57 @@ +package Greedy; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.Arrays; + +public class Q2697 { + public static void main(String[] args) throws IOException { + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int T = Integer.parseInt(br.readLine()); + String[] arr = new String[T]; + + for(int i = 0; i < T; i++) { + arr[i] = br.readLine(); + } + + for(int i = 0; i < T; i++) { + int index = -1; + String temp = arr[i]; + String[] tempArr = temp.split(""); + for(int j = temp.length() - 2; j >= 0; j--) { + int min = Integer.MAX_VALUE; + int swapIndex = -1; + for(int k = j + 1; k < tempArr.length; k++) { + int a = Integer.parseInt(tempArr[j]); + int b = Integer.parseInt(tempArr[k]); + if(a < b && b < min) { + min = b; + swapIndex = k; + } + } + if(swapIndex != -1) { + String tempString = tempArr[j]; + tempArr[j] = tempArr[swapIndex]; + tempArr[swapIndex] = tempString; + index = j; + break; + } + } + if(index == -1) { + bw.write("BIGGEST\n"); + continue; + } + Arrays.sort(tempArr, index + 1, tempArr.length); + for(String s : tempArr) { + bw.write(s); + } + bw.write("\n"); + } + bw.flush(); + } +}