전체 글333 백준/10870 피보나치 수 5 피보나치 수 5 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 256 MB 86903 53223 45407 61.759% 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. 출력 첫째 줄.. 자바/알고리즘 문제 풀이 2022. 12. 5. 백준/10872 팩토리얼 팩토리얼 성공 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 256 MB 134960 70607 57896 52.571% 문제 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다. 출력 첫째 줄에 N!을 출력한다. 예제 입력 1 복사 10 예제 출력 1 복사 3628800 예제 입력 2 복사 0 예제 출력 2 복사 1 풀이 반복문을 이용하여 풀었다. public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static BufferedWriter bw = new BufferedWrite.. 자바/알고리즘 문제 풀이 2022. 12. 5. [Java] 재귀 [미완] 자신을 정의할 때 자기 자신을 재 참조하는 방법을 재귀라고 한다. 이런식으로 func()라는 메소드를 정의할때 func 메소드안에 func을 호출하고 그 호출 한 func 안에 func을 참조하는, 이러한 방법이 재귀이다. 이렇게 함수안에 함수를 재 호출 하다보니 몇가지 고려해야할게 있다. 1. 재귀호출이 너무 반복적으로 많이되면 , 즉 재귀가 깊어지면 Stack OverFlow라는 에러가 발생한다. + 많이 호출되는 만큼 메모리에 스택되기 때문에 메모리를 엄청 차지한다. + 호출된 함수를 닫으면서 스택된 메모리에서 pop을 하기 때문에 수행시간도 느려진다. 결국 재귀호출을 하다가 메모리가 부족해지는 것과 성능이 저하되는것이 일상이기 때문에 이러한 이유로 재귀호출은 평상시에 알고리즘 자체가 재귀로 하면 .. 자바/알고리즘 2022. 12. 5. 백준/10814 나이순 정렬 나이순 정렬 시간 제한메모리 제한제출정답맞힌 사람정답 비율 3 초 256 MB 94926 41905 32001 42.990% 문제 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 온라인 저지 회원의 수 N이 주어진다. (1 ≤ N ≤ 100,000) 둘째 줄부터 N개의 줄에는 각 회원의 나이와 이름이 공백으로 구분되어 주어진다. 나이는 1보다 크거나 같으며, 200보다 작거나 같은 정수이고, 이름은 알파벳 대소문자로 이루어져 있고, 길이가 100보다 작거나 같은 문자열이다. 입력은 가입한 순서로 주어진다. 출력 첫째 줄부터 총 N개의 줄에 걸.. 자바/알고리즘 문제 풀이 2022. 12. 5. 백준/1181 단어 정렬 단어 정렬 시간 제한메모리 제한제출정답맞힌 사람정답 비율 2 초 256 MB 119208 49516 36962 40.111% 문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 길이가 짧은 것부터 길이가 같으면 사전 순으로 입력 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. 출력 조건에 따라 정렬하여 단어들을 출력한다. 단, 같은 단어가 여러 번 입력된 경우에는 한 번씩만 출력한다. 예제 입력 1 복사 13 but i wont hesitate no more no more it cannot .. 자바/알고리즘 문제 풀이 2022. 12. 5. [Java] compareTo() 자바 Wrapper클래스에서 사용 할 수 있는 compareTo() 메소드 - int compareTo(NumberSubClass referenceName) - int compareTo(String anotherString) 숫자비교 Byte,Integer... 등에서 compareTo()를 사용해서 숫자비교를 한다면 자기자신.compareTo() 의 결과로 자기자신이 더크다면 1 자기자신과 크기가 같다면 0 자기자신이 더 작다면 -1 의 결과값을 리턴해준다. 왜이렇게 리턴해주는가 -> 자기 자신이 들어온 값보다 ~더 크다!와 같이 생각하면 편하다 [Java] Comparator , Comparable , 익명객체(클래스) Comparable, Comparator는 모두 인터페이스이다. 인터페이스 이므로.. 자바/++ 2022. 12. 5. [Java] Set [HashSet] Set HashSet은 컬렉션 인터페이스를 상속한 Set 인터페이스의 구현클래스(구현체)이다. Set은 집합이라는 뜻이며 , Map과 같이 저장순서를 유지하지않는다(인덱스 없음) 또한 중복값을 허용하지 않는다 (Map처럼) 객체 선언 Set set = new HashSet(); 초기화는 List와 같은 다른 컬렉션 구현체로 바로 가능. List list = new ArrayList(); list.add(2); list.add(2); list.add(2); list.add(2); set = new HashSet(list); bw.write("list to set , 중복값을 넣게되면 하나만 저장된다. :"+ set.toString()); 값추가 Set set = new HashSet(); set.add(5.. 자바/자료구조 2022. 12. 5. 백준/11651 좌표 정렬하기 2 좌표 정렬하기 2 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 256 MB 52049 33768 28751 67.216% 문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 y좌표가 증가하는 순으로, y좌표가 같으면 x좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. 출력 첫째 줄부터 N개의 줄에 점을 정렬한 결과를 출력한다. 예제 입력 1 복사 5 0 4 1 2 1 -1 2 2 3 3 예제 출력 1 복사 1 -1 1 2 2 2 3 3.. 자바/알고리즘 문제 풀이 2022. 12. 5. [Java] 람다 [미완성] 람다 표현식 람다식은 익명함수를 지칭하는 용어이다. 람다식을 사용하기 위해서는 함수형 인터페이스에 접근해서 사용해야한다. 람다식 즉 익명함수를 값으로 사용 할 수도 있으며 파라미터로 전달 및 변수에 대입 하기와 같은 연산들이 가능하다. [Java] Comparator , Comparable , 익명객체(클래스) Comparable, Comparator는 모두 인터페이스이다. 인터페이스 이므로 Comparable, Comparator를 사용하고자 한다면 인터페이스내에 선언된 메소드를 구현해야한다! Comparable 내부에는 compareTo(T o)라는 메소드가 keeeeeepgoing.tistory.com 람다의 표현식 1. 람다는 매개변수의 자료형을 생략할 수 있다, 생략 안하고 적어도 된다. 2. .. 자바/++ 2022. 12. 5. 백준/11650 좌표 정렬하기 좌표 정렬하기 시간 제한메모리 제한제출정답맞힌 사람정답 비율 1 초 256 MB 94418 44658 34535 47.988% 문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. 출력 첫째 줄부터 N개의 줄에 점을 정렬한 결과를 출력한다. 예제 입력 1 복사 5 3 4 1 1 1 -1 2 2 3 3 예제 출력 1 복사 1 -1 1 1 2 2 3 3 3.. 자바/알고리즘 문제 풀이 2022. 12. 4. [Java] Comparator , Comparable , 익명객체(클래스) Comparable, Comparator는 모두 인터페이스이다. 인터페이스 이므로 Comparable, Comparator를 사용하고자 한다면 인터페이스내에 선언된 메소드를 구현해야한다! Comparable 내부에는 compareTo(T o)라는 메소드가 있고, Comparable을 사용하고자 한다면 compareTo 메소드를 재정의(오버라이드/구현)을 해줘야한다. Comparator 내부에는 compare(T o1,T o2)라는 메소드가 있다. Comparator을 사용하고자 한다면 compare 메소드를 재정의(오버라이드/구현)을 해줘야한다. 인터페이스 관련 의문해결 Comparator (Java Platform SE 8 ) Compares its two arguments for order. Retu.. 자바/++ 2022. 12. 4. 백준/1427 소트인사이드 소트인사이드 시간 제한메모리 제한제출정답맞힌 사람정답 비율 2 초 128 MB 66216 42477 35550 64.523% 문제 배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자. 입력 첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다. 예제 입력 1 복사 2143 예제 출력 1 복사 4321 예제 입력 2 복사 999998999 예제 출력 2 복사 999999998 예제 입력 3 복사 61423 예제 출력 3 복사 64321 예제 입력 4 복사 500613009 예제 출력 4 복사 965310000 풀이 Arrays.sort()의 내림차순을 사용하기.. 자바/알고리즘 문제 풀이 2022. 12. 4. 이전 1 ··· 20 21 22 23 24 25 26 ··· 28 다음