알고리즘(JAVA 사용) 52

[알고리즘풀이]백준 7795 : 먹을 것인가 먹힐 것인가 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 7795번 먹을 것인가 먹힐 것인가를 풀게 되었습니다. 7795번: 먹을 것인가 먹힐 것인가 심해에는 두 종류의 생명체 A와 B가 존재한다. A는 B를 먹는다. A는 자기보다 크기가 작은 먹이만 먹을 수 있다. 예를 들어, A의 크기가 {8, 1, 7, 3, 1}이고, B의 크기가 {3, 6, 1}인 경우에 A가 B를 먹을 www.acmicpc.net 본문 1) 문제 2) 과정 이것도 꽤나 쉽게? 한 30분?40분 걸려 풀어낸 문제라 난이도가 그리 높은 문제는 아니였습니다. 코드는 이번에는 조금 긴 input, 중요로직인 func, 출력을 담당하는 output으로 구성하였습니다. 2-1) main ..

[알고리즘풀이]백준 6236 : 용돈 관리 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 6236번 용돈 관리를 풀게 되었습니다. 6236번: 용돈 관리 현우는 용돈을 효율적으로 활용하기 위해 계획을 짜기로 하였다. 현우는 앞으로 N일 동안 자신이 사용할 금액을 계산하였고, 돈을 펑펑 쓰지 않기 위해 정확히 M번만 통장에서 돈을 빼서 쓰기로 www.acmicpc.net 본문 1) 문제 2) 과정 이 문제는 꽤 고전했던 문제입니다. 한 2일?정도 시간이 걸렸던거 같아요. 문제 이해도 쉽지않았고, 분명 예제 문제는 잘 풀리는데 체점만 돌리면 에러가 나서 이를 보완하느라 기간이 필요했습니다. 정답률을 보면 30퍼센트인 것 부터 다들 쉽지 않았었나봅니다... 코드는 input, func, te..

[알고리즘풀이]백준 3273 : 두 수의 합 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 3273번 두 수의 합 문제를 풀게 되었습니다. 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 본문 1) 문제 2) 과정 이 문제도 난이도 있는 편은 아니었습니다. 이것도 30분? 40분 정도 걸렸던 것 같아요. 이번엔 다른 문제풀이들과는 달리 코드를 최대한 줄여보았습니다. 그래서 main하나로 코드가 끝이납니다. 2-1) main public s..

[알고리즘풀이]백준 1920 : 수 찾기 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 1920번 수 찾기를 풀게 되었습니다. 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 본문 1) 문제 2) 과정 이 문제는 무난하게 40분?만에 풀었던 거 같아요. 지금껏 풀었던 문제들 중에 가장 쉬웠습니다. 문제를 얕보고 단순히 for문 2개를 돌렸더니 시간 초과가 한 번 떴던거 말곤 무난한 난이도였습니다. 코드는 기본 구조인 input, func, o..

[알고리즘풀이]백준 1759 : 암호 만들기 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 1759번 암호 만들기 문제를 풀게 되었습니다. 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 본문 1) 문제 백준 1759번 암호 만들기는 btruteforce입니다. 2) 과정 이 문제는 그렇게 어렵게 푼 건 아니였어요. 여러 알고리즘 문제중에 후반에 푼 편이기도 해서 골드 5보단 실버정도에 가까운 문제였어요. 코드는 입력, 로직, 출력으로 구분하였습니다. 입력에는 input()이 있고 로직에는 재귀되는..

[알고리즘풀이]백준 1182 : 부분수열의 합 JAVA

목차 개요 본문 1) 문제 2) 과정 3) 코드 전체 개요 이번 알고리즘 스터디에서 JAVA를 이용해 백준 1182번 부분수열의 합을 풀게 되었습니다. 1182번: 부분수열의 합 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. www.acmicpc.net 본문 1) 문제 백준 1182번 부분수열의 합은 bruteforce algorithm입니다. 2) 과정 이 문제는 메모리 초과, 시간 초과 등 여러 고전을 거쳐 풀었던 문제입니다... 저번에 풀었던 15649의 n과 m문제와 비슷해 그 형태를 유지하려고 하다보니 불필요하게 함수..

[개념정리] System.in / InputStreamReader / BufferedReader 정리

개요 앞으로도 BufferedReader를 사용하며 자주 언급할 것 같아 한번에 정리해두고자 작성했다. 본론 BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); 자주사용하는 BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); 을 분석해보도록 하겠습니다. 먼저 가장 안쪽에 있는 System.in은 콘솔에서 데이터를 입력받을 때 사용하고, inputStream 타입의 필드인 System클래스의 in 정적필드입니다. System.in으로 받은 Inputstream 객체에 read함수를 실행하면 1byte밖에 읽지 못해 2byte인 한글은..

[알고리즘풀이]백준 15652: N과 M(4) 스터디 (15649와 함께 보면 좋음)

해당 문제는 15649번과 동일한 점이 많은 문제입니다. 15649번과 다른 점만을 포스팅할 예정이기 때문에 자세히 알고자 하신다면 해당 링크를 확인해주시기 바랍니다. https://codingjerk-diary.tistory.com/28 [알고리즘풀이]백준 15649 스터디 (15650, 15651, 15652와 input, output동일) 개요 이번 알고리즘 스터디가 시작되면서 처음 회차로 해당 4개의 문제를 풀어보았습니다. package sujeong.bruteforce; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream.. codingjerk-diary.tistory.com 3-4) 15652..

[알고리즘풀이]백준 15650: N과 M(2) 스터디 (15649와 함께 보면 좋음)

해당 문제는 15649번과 동일한 점이 많은 문제입니다. 15649번과 다른 점만을 포스팅할 예정이기 때문에 자세히 알고자 하신다면 해당 링크를 확인해주시기 바랍니다. https://codingjerk-diary.tistory.com/28 [알고리즘풀이]백준 15649 스터디 (15650, 15651, 15652와 input, output동일) 개요 이번 알고리즘 스터디가 시작되면서 처음 회차로 해당 4개의 문제를 풀어보았습니다. package sujeong.bruteforce; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream.. codingjerk-diary.tistory.com 3-2) 15650..

[알고리즘풀이]백준 15651: N과 M(3) 스터디 (15649와 함께 보면 좋음)

해당 문제는 15649번과 동일한 점이 많은 문제입니다. 15649번과 다른 점만을 포스팅할 예정이기 때문에 자세히 알고자 하신다면 해당 링크를 확인해주시기 바랍니다. https://codingjerk-diary.tistory.com/28 [알고리즘풀이]백준 15649 스터디 (15650, 15651, 15652와 input, output동일) 개요 이번 알고리즘 스터디가 시작되면서 처음 회차로 해당 4개의 문제를 풀어보았습니다. package sujeong.bruteforce; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream.. codingjerk-diary.tistory.com 3-3) 15651..