자바77 [백준] JAVA 자바 : 보물 (1026번) 문제가 길지만, 요약하자면 배열 두 개를 입력받아서 곱한 값 중 최소값을 출력하라는 것! 이건 진짜 굉장히 간단한데... A배열은 작은 값부터, B배열은 큰 값부터 곱해준 후 더하면 당연히 수열의 최솟값이 나오겠지?? 왜냐고?? 전 그냥 그렇게 떠오르던데... 그래서 풀리니 풀리네요... 저도 증명은 못하겠읍니다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; import java.util.Arrays; import java.util.Comparator; import java.lang.StringBuilder; public c.. 2024. 2. 23. [백준] JAVA 자바 : 잃어버린 괄호 (1541번) 괄호를 적절히 넣어서 가장 최소값이 만들어지는 식을 만들면 된다. 얼핏 보면 꽤 복잡해 보여서 상당히 시간을 썼는데... 조금만 생각해 보니, 굉장히 간단했다. 식에서 '-' (빼기 기호)를 만나기 전까지는 모든 수를 다 더해주고, '-'를 만난 이후부터는 모든 수를 다 빼주면 된다! 왜냐고?? 빼기가 포함된 값들은 모두 괄호를 쳐서 빼주면 최소값이 나올 거니까! 1 + 2 - 3 + 4 - 5 여기서, 가장 최소값은 1 + 2 - (3 + 4) - (5) 이런 식으로 만들어질 수 있는 것!! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.lang.StringBui.. 2024. 2. 23. [백준] JAVA 자바 : 회의실 배정 (1931번) 꽤 오래 걸리긴 했는데, 생각보다 되게 간단한 문제였다. 일단 배열을 정렬한 후 하나씩 넣으면서, 앞서 배정한 회의의 끝나는 시간보다 시작 시간이 더 뒤에 오면서, 회의 진행 시간이 가장 짧은 회의를 배정하면 된다. 그래서 이차원 배열의 개수를 3개로 만들고, 인덱스 0에는 시작 시간, 1에는 끝나는 시간, 2에는 회의 진행 시간을 할당했다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; import java.util.Arrays; import java.util.Comparator; public class AssignConfe.. 2024. 2. 23. [백준] JAVA 자바 : 연속합 2 (13398번) 와 진짜 이거 풀려고 한 이틀 정도 쓴 것 같다... 한 케이스를 해결하면 다른 케이스에서 문제가 나고, 또 이걸 해결하면 원래 케이스에서 오류가 나고... 그런데 결국 해결했다는 것! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class ContinuousSum2 { public static int stoi(String str) { return Integer.parseInt(str); } public static void main(String[] args) throws IOException { Buffered.. 2024. 1. 27. [백준] JAVA 자바 : 가장 긴 바이토닉 부분 수열 (11054번) 솔직히 이 문제를 처음 봤을 때 굉장히 난감했었다... 아니 이걸 어떻게 만들지?? 생각했었는데, 조금만 고민을 해보니 크게 어렵지 않게 해결할 수 있었다. i번째 인덱스 요소를 기준으로 1~i까지의 증가하는 수열과 i~N까지의 감소하는 수열을 구해서 합을 구하면 되는 문제였다. 자세한 건 코드를 보십시요! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class LongestBitonicSequence { public static int stoi(String str) { return Integer.parseInt.. 2024. 1. 27. [백준] JAVA 자바 : 가장 긴 감소하는 부분 수열 (11722번) 증가하는 부분 수열을 반대로 만들면 된다. 이전 수열의 마지막 값보다 자신이 더 작다면 수열에 추가하고, 그게 아니라면 나부터 다시 수열이 시작하도록! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class LongestDecreasingSequence { public static int stoi(String str) { return Integer.parseInt(str); } public static void main(String[] args) throws IOException { BufferedReader b.. 2024. 1. 27. 이전 1 2 3 4 5 6 7 ··· 13 다음 반응형