728x90

알고리즘 35

[Java] 백준 2455번 지능형 기차

https://www.acmicpc.net/problem/2455 2455번: 지능형 기차 최근에 개발된 지능형 기차가 1번역(출발역)부터 4번역(종착역)까지 4개의 정차역이 있는 노선에서 운행되고 있다. 이 기차에는 타거나 내리는 사람 수를 자동으로 인식할 수 있는 장치가 있다. www.acmicpc.net 입출력값에 따라 계산되고 그에 따른 최대값을 구하는 문제. Scanner의 경우 입력값들 사칙연산이랑 최대값 구하는 로직으로 쉽게 구현하지만! 효율성을 위해서 Buffer를 이용해보았다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTok..

Algorithm 2022.02.23

[Java] 백준 2355번 시그마

https://www.acmicpc.net/problem/2355 2355번: 시그마 첫째 줄에 두 정수 A, B가 주어진다. (-2,147,483,648 ≤ A, B ≤ 2,147,483,647) www.acmicpc.net A와 B 사이의 전체적인 합을 구하는 문제 흔히 알고 있는 n(n+1) / 2 1부터 n까지의 합 공식을 살짝만 변형시켜주면 된다. 문제는 1부터 B가 아니라 A부터 B이기 때문에 조건을 설정해서 식을 약간 변형해줘야함. 그결과 (A + B ) * (A - B + 1) /2 라는 공식이 나오게 되었다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import j..

Algorithm 2022.02.16

[Java] HashMap

HashMap 이란? Map 인터페이스를 구현하고 있는 대표적인 자바 클래스. key-value쌍으로 되어있다. Map의 대표적인 특징은 key는 정확히 하나의 value만 가질 수 있다. public class HashMap extends AbstractMap implements Map, Cloneable, Serializable { } HashMap 클래스의 내부는 위와 같은 상속, 구현 관계를 가지고 있다. HashMap은 왜 필요할까? List 형태를 사용하지 않고 HashMap을 사용하는 이유는 바로 성능 때문이다. 만약 List를 사용했다면 검색하는데 있어 시간복잡도는 O(n)으로 나타날것이다. 반면 HashMap은 삽입, 검색 시간에 시간복잡도 O(1)이라는 이점을 가지고 있다. key값의 ..

JAVA 2022.01.26

[Java] 백준 17388번 와글와글 숭고한

https://www.acmicpc.net/problem/17388 17388번: 와글와글 숭고한 첫 번째 줄에 숭실대학교의 참여도, 고려대학교의 참여도, 한양대학교의 참여도를 의미하는 세 자연수 S, K, H가 공백으로 구분되어 주어진다. (0 ≤ S, K, H ≤ 100) 세 대학의 참여도는 모두 다르다. www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class BJ17388 { public static void main(String[] ..

Algorithm 2022.01.21

[Java] 백준 23825번 SASA 모형을 만들어보자

https://www.acmicpc.net/problem/23825 23825번: SASA 모형을 만들어보자 당신은 SASA 연못에서 알파벳 S 모양의 블록 $N$개와 알파벳 A 모양의 블록 $M$개를 건졌다. 태영이는 연못에서 건진 블록을 이용해 학교에 전시할 SASA 모형을 최대한 많이 만들려고 한다. SASA 모형 $ www.acmicpc.net 만들수 있는 SASA모형의 최대값을 구하는 문제. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class BJ23825 { public static void mai..

Algorithm 2022.01.13

[Java] 백준 11948번 과목선택

https://www.acmicpc.net/problem/11948 11948번: 과목선택 JOI는 물리, 화학, 생물, 지구과학, 역사, 지리 총 6 과목의 시험을 봤다. 각 시험의 만점은 100점이다. JOI는 물리, 화학, 생물, 지구과학 4과목 중에서 3 과목을 선택하고 역사, 지리 2 과목 중에 www.acmicpc.net 선택과목을 통해 최대값을 구하는 문제. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class BJ11948 { public static void main(String[] args) throws IO..

Algorithm 2021.12.30

[Java] 백준 10179번 쿠폰

https://www.acmicpc.net/problem/10179 10179번: 쿠폰 당신은 어떤 물건이라도 20% 할인해주는 쿠폰을 가지고 있다. 원래 가격이 주어질 때, 쿠폰을 사용하면 얼마가 되는지 알려주는 프로그램을 작성하시오. www.acmicpc.net 조건이 적용되는 입출력 문제. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BJ10179 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamRe..

Algorithm 2021.12.29

[Java] 백준 10039번 평균 점수

https://www.acmicpc.net/problem/10039 10039번: 평균 점수 입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다. 점수는 모두 0점 이상, 100점 이하인 5의 배수이다. 따라서, 평균 점 www.acmicpc.net ↑ 해당문제 링크 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BJ10039 { public static void main(String[] args) throws IOException { BufferedReader br = new Buffer..

Algorithm 2021.12.29

[Java] 백준 5575번 타임 카드

https://www.acmicpc.net/problem/5575 5575번: 타임 카드 JOI 상사는 직원의 근무시간을 타임 카드로 관리하고있다. 직원들은 전용 장비를 사용하여 타임 카드에 출근 시간을 기록한다. 근무를 마치고 퇴근할 때도 타임 카드에 퇴근 시간을 기록한다. www.acmicpc.net import java.io.*; import java.util.StringTokenizer; public class BJ5575 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); for(int i =0; i

Algorithm 2021.12.23

[Java] 백준 5543번 상근날드

https://www.acmicpc.net/problem/5543 5543번: 상근날드 입력은 총 다섯 줄이다. 첫째 줄에는 상덕버거, 둘째 줄에는 중덕버거, 셋째 줄에는 하덕버거의 가격이 주어진다. 넷째 줄에는 콜라의 가격, 다섯째 줄에는 사이다의 가격이 주어진다. 모든 가 www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BJ5543 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStre..

Algorithm 2021.12.23
728x90