알고리즘 문제풀이/Beakjoon 37

백준 1703. 생장점 (JAVA)

https://www.acmicpc.net/problem/1703 1703번: 생장점 branchorama 나무는 특이한 규칙을 가지고 성장합니다. 어린 branchorama 초목은 하나의 잎을 꼭대기에 가진 가는 묘목이며, 그 잎에는 생장점이 있습니다. 성장하는 계절 동안 나무의 생장점들은 여 www.acmicpc.net 생장점 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 128 MB 1600 1277 1169 82.150% 문제 branchorama 나무는 특이한 규칙을 가지고 성장합니다. 어린 branchorama 초목은 하나의 잎을 꼭대기에 가진 가는 묘목이며, 그 잎에는 생장점이 있습니다. 성장하는 계절 동안 나무의 생장점들은 여러 개의 가지로 나뉘게 되며, 성장이 끝나면 각 가지는 생..

백준 2010. 플러그 (JAVA)

https://www.acmicpc.net/problem/2010 2010번: 플러그 첫째 줄에 멀티탭의 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 이어서 둘째 줄부터 N개의 줄에 걸쳐 각 멀티탭이 몇 개의 플러그를 꽂을 수 있도록 되어 있는지를 나타내는 자연수가 주어진다. 이 자연 www.acmicpc.net 플러그 한국어 시간 제한메모리 제한제출정답맞힌 사람정답 비율 2 초 256 MB 18441 10153 8947 56.814% 문제 선영이의 집에는 콘센트를 꽂을 수 있는 플러그가 하나밖에 없다. 선영이는 많은 컴퓨터를 가지고 있는데, 컴퓨터의 전원 문제는 어떻게 해결하는 것일까? 하나의 플러그가 있고, N개의 멀티탭이 있다. 각 멀티탭은 몇 개의 플러그로 이루어져 있다고 한다. 최대 몇..

백준 1247. 부호 (JAVA)

https://www.acmicpc.net/problem/1247 1247번: 부호 총 3개의 테스트 셋이 주어진다. 각 테스트 셋의 첫째 줄에는 N(1 ≤ N ≤ 100,000)이 주어지고, 둘째 줄부터 N개의 줄에 걸쳐 각 정수가 주어진다. 주어지는 정수의 절댓값은 9223372036854775807보다 작거 www.acmicpc.net 부호 시간 제한메모리 제한제출정답맞힌 사람정답 비율 2 초 256 MB 10689 3376 2977 36.550% 문제 N개의 정수가 주어지면, 이 정수들의 합 S의 부호를 구하는 프로그램을 작성하시오. 입력 총 3개의 테스트 셋이 주어진다. 각 테스트 셋의 첫째 줄에는 N(1 ≤ N ≤ 100,000)이 주어지고, 둘째 줄부터 N개의 줄에 걸쳐 각 정수가 주어진다...

[백준] 별 찍기 모음 (JAVA)

백준에서 별 찍기 문제는 1~3까지 bronze 레벨5, 4~9까진 bronze 레벨 3 정도 수준이다. 백준 2438. 별 찍기 1 - 기본 중의 기본 ! https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net import java.util.Scanner; public class Main { // 백준 2438. 별 찍기 1 public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for(int i=0; i

백준 2547. 사탕 선생 고창영 (JAVA)

https://www.acmicpc.net/problem/2547 2547번: 사탕 선생 고창영 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 빈 줄로 구분되어 있고, 다음과 같이 구성되어 있다. 테스트 케이스의 첫째 줄에 학생의 수 N이 주어진다. 다음 N개의 줄에는 www.acmicpc.net 사탕 선생 고창영 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 128 MB 4159 1476 1306 40.234% 문제 사탕 박사 고창영은 사탕 공장을 그만 두고 초등학교 선생님으로 취직했다. 오늘은 창영이네 반 학생들과 소풍을 가는 날이다. N명의 학생은 모두 가방에 사탕을 가득 담아왔다. 그런데, 사탕을 많이 가져온 학생들이 사탕을 적게 가져온 학생들을 놀리기 시작했다. 창영..

백준 2991. 사나운 개 (JAVA)

https://www.acmicpc.net/problem/2991 2991번: 사나운 개 창영 마을의 우체부, 우유배달원, 신문배달원은 상근이네 집에 가는 것을 매우 싫어한다. 그 이유는 상근이네 집에는 사나운 개 두 마리가 지키고 있기 때문이다. 하지만, 그들은 이 개의 행동 www.acmicpc.net 문제 창영 마을의 우체부, 우유배달원, 신문배달원은 상근이네 집에 가는 것을 매우 싫어한다. 그 이유는 상근이네 집에는 사나운 개 두 마리가 지키고 있기 때문이다. 하지만, 그들은 이 개의 행동이 예측 가능하다는 것을 모르고 있다. 매일 아침, 개 한마리는 A분동안 공격적이고, B분동안 조용히 쉬고 있다. 또다른 개는 C분동안 공격적이고, D분동안 조용히 쉰다. 두 개는 이 행동을 계속해서 연속적으로 ..

[코테/알고리즘] 백준 단계별 학습 방법 (+초보자 추천)

알고리즘 코딩 테스트가 많은 요즘 준비를 하긴 해야하는데 어디서부터 어떻게 시작해야할지가 막막하다면 ? 초보자에게 유용한 [백준] 사이트를 이용해보자 문제가 엄청 많다... 처음 사이트에 들어가면 어디서부터 문제를 풀어야 할지 감이 오지 않을 것이다. 그러나 solved.ac 기능을 사용하면 난이도에 따라 문제를 선별할 수 있다. [ 백준에서 solved.ac 기능 이용하기 (완 전 쉬 움) ] 1. 백준 사이트 접속 https://www.acmicpc.net/ 2. [설정] - [solved.ac] 클릭 - [사용] 설정 3. [문제] - [전체 문제] - 검색 [옵션] 에서 난이도 선택 및 '적용' 단순 난이도 조절 외에도 설정할 수 있는 옵션들이 많으니 유용하게 사용할 수 있을 것이다. 참고로 난이..

[자바 알고리즘] String - 단어 뒤집기 : 주어진 N개의 단어를 뒤집어 출력하기

4. 단어 뒤집기 [설명] N개의 단어가 주어지면 각 단어를 뒤집어 출력하는 프로그램을 작성하세요. [입력] 첫 줄에 자연수 N(3> 1. StringBuilder 를 이용 -> reverse() 로 뒤집기 public static ArrayList solution(int n, String[] str){ ArrayList answer = new ArrayList(); for(String x: str){ String tmp = new StringBuilder(x).reverse().toString(); answer.add(tmp); } return answer; } public static void main(String[] args) throws IOException { Scanner sc = new Sc..

[자바 알고리즘] String - 문장 속 단어 : 문장 속에서 가장 긴 단어를 출력하기

3. 문장 속 단어 [설명] 한 개의 문장이 주어지면 그 문장 속에서 가장 긴 단어를 출력하는 프로그램을 작성하세요. 문장속의 각 단어는 공백으로 구분됩니다. [입력] 첫 줄에 길이가 100을 넘지 않는 한 개의 문장이 주어집니다. 문장은 영어 알파벳으로만 구성되어 있습니다. [출력] 첫 줄에 가장 긴 단어를 출력한다. 가장 길이가 긴 단어가 여러개일 경우 문장속에서 가장 앞쪽에 위치한 단어를 답으로 합니다. 문자열이 특정 구분자로 연결되어 있을 경우, 구분자를 기준으로 문자열을 분리하기 위해서는 String의 Split() 메소드를 이용하거나, java.Util 패키지의 StringTokenizer 클래스를 이용할 수 있다. >>>>> 방법 1. Split() 이용 배열로 리턴해 바로 비교 public..

[자바 알고리즘] String - 대소문자 변환 : 대문자는 소문자로 소문자는 대문자로 변환하여 출력

2. 대소문자 변환 [설명] 대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력하는 프로그램을 작성하세요. [입력] 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 문자열은 영어 알파벳으로만 구성되어 있습니다. [출력] 첫 줄에 대문자는 소문자로, 소문자는 대문자로 변환된 문자열을 출력합니다. >>> 풀이 public static void main(String[] args) { // Scanner를 통해 문자열을 입력 받음 Scanner scan = new Scanner(System.in); String input = scan.next(); // 입력 받은 문자열을 char로 쪼개서 하나하나 검사 String answer = ""; f..

728x90