java
-
[LeetCode] 11. Container With Most Water (JAVA)Algorithm 2023. 8. 26. 17:51
You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the ith line are (i, 0) and (i, height[i]). Find two lines that together with the x-axis form a container, such that the container contains the most water. Return the maximum amount of water a container can store. Notice that you may not slant the container. Example 1: Input: height..
-
[백준] 3053번 택시 기하학 (JAVA)Algorithm 2020. 5. 22. 14:42
문제 19세기 독일 수학자 헤르만 민코프스키는 비유클리드 기하학 중 택시 기하학을 고안했다. 택시 기하학에서 두 점 T1(x1,y1), T2(x2,y2) 사이의 거리는 다음과 같이 구할 수 있다. D(T1,T2) = |x1-x2| + |y1-y2| 두 점 사이의 거리를 제외한 나머지 정의는 유클리드 기하학에서의 정의와 같다. 따라서 택시 기하학에서 원의 정의는 유클리드 기하학에서 원의 정의와 같다. 원: 평면 상의 어떤 점에서 거리가 일정한 점들의 집합 반지름 R이 주어졌을 때, 유클리드 기하학에서 원의 넓이와, 택시 기하학에서 원의 넓이를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 반지름 R이 주어진다. R은 10,000보다 작거나 같은 자연수이다. 출력 첫째 줄에는 유클리드 기하학에서 반지름이 R..
-
[백준] 4153번 직각삼각형 (JAVA)Algorithm 2020. 5. 22. 14:25
문제 과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오. 입력 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. 출력 각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다. 예제 입력1 6 8 10 25 52 60 5 12 13 0 0 0 예제 출력1 right wrong right 코드 import java.util.Scanner; public class no_4153 { public static void main(String[] args) { in..
-
[JAVA] 스트림(Stream)JAVA 2020. 5. 21. 21:04
Stream Stream이란? Java8에서 추가된 것으로 람다를 활용할 수 있는 기술 중 하나 배열 또는 컬렉션등의 저장요소를 하나씩 참조해 람다식을 적용하여 반복적으로 처리할 수 있음 즉, 배열과 컬렉션을 함수형으로 처리할 수 있음 스트림 구조 스트림 생성 : 스트림 인스턴스 생성 중간 연산 : 필터링 및 매핑 등 원하는 결과를 만드는 중간 작업 최종 연산 : 최종적으로 결과를 만들어내는 작업 Create Operations - Arrays.stream() String[] arr = new String[] {"A", "B", "C"}; Stream stream = Arrays.stream(arr); Stream streamOfArrayPart = Arrays.stream(arr, 1, 3);- Col..
-
[JAVA] 람다식(Lambda Expression)JAVA 2020. 5. 21. 21:03
Lambda Expression 람다식이란? 함수적 프로그래밍을 위해 JAVA8 에서 추가된 기능으로 익명객체를 생성하기 위한 표현식 쉽게말해 함수인데 함수를 따로 만들지 않고 코드한줄에 함수를 써서 그것을 호출하는 방식 - 람다식 이전 기존 자바에서는 다형성을 제공하기 위해 interface를 만들고 그것을 구현한 class를 만들어 interface참조 변수에 interface를 구현한 class객체를 생성해 사용함 public interface ExampleInterface { public void ex(); } public class Example implements ExampleInterface { @Override public void ex(){ System.out.println("Exampl..
-
[백준] 3009번 네 번째 점 (JAVA)Algorithm 2020. 5. 21. 20:50
문제 세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오. 입력 세 점의 좌표가 한 줄에 하나씩 주어진다. 좌표는 1보다 크거나 같고, 1000보다 작거나 같은 정수이다. 출력 직사각형의 네 번째 점의 좌표를 출력한다. 예제 입력1 30 20 10 10 10 20 예제 출력1 30 10 코드 import java.util.Scanner; public class no_3009 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] x = new int[3]; int[] y = new int[3]; int[] result = new int[2]; int ..
-
[Programmers] 2020 KAKAO BLIND RECRUITMENT 괄호 변환 (JAVA)Algorithm 2020. 5. 20. 16:49
문제 카카오에 신입 개발자로 입사한 콘은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴파일하여 로그를 보니 대부분 소스 코드 내 작성된 괄호가 개수는 맞지만 짝이 맞지 않은 형태로 작성되어 오류가 나는 것을 알게 되었습니다. 수정해야 할 소스 파일이 너무 많아서 고민하던 콘은 소스 코드에 작성된 모든 괄호를 뽑아서 올바른 순서대로 배치된 괄호 문자열을 알려주는 프로그램을 다음과 같이 개발하려고 합니다. 용어의 정의 '(' 와 ')' 로만 이루어진 문자열이 있을 경우, '(' 의 개수와 ')' 의 개수가 같다면 이를 균형잡힌 괄호 문자열이라고 부릅니다. 그리고 여기에 '('와 ')'의 괄호의 짝도 모두 맞을..
-
[Programmers] 2020 KAKAO BLIND RECRUITMENT 문자열 압축 (JAVA)Algorithm 2020. 5. 20. 14:20
문제 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 aabbaccc의 경우 2a2ba3c(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, abcabcdede와 같은 문자열은 전혀 압축되지 않습니다. 어피치는 이러한 단점을 해결하기 위해 문자열을 1개 이상의 단위로 잘라서 압축하여 더 짧은 ..