728x90 반응형 전체 글248 [백준] 11868번 : 님 게임2(JAVA) https://www.acmicpc.net/problem/11868 11868번: 님 게임 2 koosaga와 cubelover가 님 게임을 하고 있다. 님 게임은 돌을 차곡 차곡 위로 쌓아올린 돌 더미 k개를 이용한다. 각각의 돌 더미에는 한 개 이상의 돌이 있다. 두 사람은 서로 턴을 번갈아가면서 님 게 www.acmicpc.net 풀이 XOR을 이용하여 푸시면 됩니다. XOR을 이용해서 입력받은 내용을 모두 할 경우 0이 되는 경우 후자가 승리하게 됩니다. 소스코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; publi.. 2021. 8. 11. [백준] 22864번 : 피로도(JAVA) https://www.acmicpc.net/problem/22864 22864번: 피로도 첫 번째 줄에 $A$, $B$, $C$, $M$이 공백으로 구분되어 주어진다. (하루는 24시간이다.) 맨 처음 피로도는 0이다. www.acmicpc.net 풀이 피로도 증가될 양 + 현재 피로도 2021. 8. 10. [백준] 9342번 : 염색체(JAVA) https://www.acmicpc.net/problem/9342 9342번: 염색체 상근이는 생명과학 연구소에서 염색체가 특정한 패턴인지를 확인하는 일을 하고 있다. 염색체는 알파벳 대문자 (A, B, C, ..., Z)로만 이루어진 문자열이다. 상근이는 각 염색체가 다음과 같은 규칙 www.acmicpc.net 풀이 정규식을 이용해 풀면 간단합니다. [A-F]? : A~F 중 문자가 있거나 없다 A+ : A가 1문자이상 있다. $ : 문자열이 끝난다. 정규식으로 String을 선언하고 matches를 하여 체크해 풀면 됩니다. 소스코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; .. 2021. 8. 9. [백준] 11726번 : 2Xn 타일링(JAVA) https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net 풀이 0번째와 1번째는 1개밖에 못만들고, 2번째 수부터는 그전수 + 그전전수를 합한 값과 같습니다. ex) num[n] = num[n - 1] + num[n - 2] 그러나 출력으로 10007로 나눈 값을 출력하라고 했으니 (num[n - 1] + num[n - 2]) % 10007을 계산하여 마지막 값을 출력해주면 됩니다. 소스코드 import java.io.BufferedReader; import java.io... 2021. 8. 7. [백준] 1912번 : 연속합(JAVA) https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 풀이 연속된 수의 합이 가장 큰 값을 구하는 문제입니다. ※ 주의 ※ 1개가 될수 있고 배열 전체가 될 수 도 있음. 1개가 될 수 도 있기 때문에 num으로 먼저 받아두고 answer을 가장 작은 값이 -1000과 num의 처음값중 큰 값으로 선언해주고, for문을 돌려 sum배열을 구하면서 max값을 채웁니다. answer하고 sum배열 중 큰값을 계속해서 answer에 넣어주면 구간 합 중 가장 큰 값.. 2021. 8. 7. [백준] 13417번 : 카드 문자열(JAVA) https://www.acmicpc.net/problem/13417 13417번: 카드 문자열 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫째 줄에 테스트 케이스의 개수를 나타내는 자연수 T가 주어진다. 각각의 테스트 케이스의 첫째 줄에 처 www.acmicpc.net 풀이 입력받음 카드문자들을 왼쪽 or 오른쪽으로 놓았을 때 가장 사전순으로 앞에있는 문자열을 출력하는 문제입니다. Deque를 사용하면 간단하게 푸실 수 있습니다. 처음에 비어있으면 문자를 넣고 그 후부터 비교하면서 넣으면 됩니다. Deque의 맨 앞 문자가 넣을 문자보다 크거나 같으면 앞에 아니면 뒤에 넣는 식으로 문제를 푸시면 됩니다. 소스코드 import java.io.BufferedRead.. 2021. 8. 7. [백준] 12931번 : 두 배 더하기(JAVA) https://www.acmicpc.net/problem/12931 12931번: 두 배 더하기 모든 값이 0으로 채워져 있는 길이가 N인 배열 A가 있다. 영선이는 다음과 같은 두 연산을 수행할 수 있다. 배열에 있는 값 하나를 1 증가시킨다. 배열에 있는 모든 값을 두 배 시킨다. 배열 B가 주 www.acmicpc.net 풀이 입력받은 숫자의 크기를 입력받고, 수를 입력받았을 때 전부 0이였던 배열이 몇번 연산해야 입력받은 수만큼 되는지 계산하는 문제입니다. 규칙 배열에 있는 값 하나를 1 증가시킨다. 배열에 있는 모든 값을 두 배 시킨다 이럴경우 A --> B 보다 역으로 B --> A(전부 0인 배열) 을 생각하시면 됩니다. 모든 수가 0일때 마무리되도록 하기 위해서 1개1개 다 비교하면서 체크.. 2021. 8. 4. [백준] 2812번 : 크게 만들기(JAVA) https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 풀이 숫자의 크기와 지워야 할 숫자의 갯수를 입력받고 수를 입력받습니다. 그 수에서 지울 숫자의 갯수만큼 지웠을 경우 최대로 큰 수가 되도록 하는 문제입니다. 전 Stack을 이용하여 풀었습니다. 자바 특성상 처음 숫자의 크기(문자열의 길이)는 받을 필요없어서 넘겨주고, 지워야할 갯수를 입력받습니다. 다음 문자열의 크기만큼 반복하면서 "스택이 비어있지 않고, 지운 횟수가 지워야할 횟수보다 작고, 스택의 마지막값이 입력받은 값보다 작으면" 스택의 마지막값을 빼주고, 지운 횟수.. 2021. 8. 4. [백준] 12517, 12518, 12525, 12526번 : Centauri Prime(JAVA) https://www.acmicpc.net/problem/12517 12517번: Centauri Prime (Small1) Back in the old days before the creation of the mighty Centauri Republic, the planet Centauri Prime was split into several independent kingdoms. The kingdom of Mollaristan was ruled by king Loatold, while the kingdom of Auritania was under the rule of quee www.acmicpc.net https://www.acmicpc.net/problem/12518 12517번: Centauri .. 2021. 8. 4. 이전 1 ··· 20 21 22 23 24 25 26 ··· 28 다음 728x90 반응형