[실버 4] 백준 5568번 자바(JAVA) - 카드 놓기
·
Basic/코딩테스트
문제 상근이는 카드 n(4 ≤ n ≤ 10) 장을 바닥에 나란히 놓고 놀고 있다. 각 카드에는 1 이상 99 이하의 정수가 적혀 있다. 상근이는 이 카드 중에서 k(2 ≤ k ≤ 4) 장을 선택하고, 가로로 나란히 정수를 만들기로 했다. 상근이가 만들 수 있는 정수는 모두 몇 가지일까? 예를 들어, 카드가 5장 있고, 카드에 쓰여 있는 수가 1, 2, 3, 13, 21라고 하자. 여기서 3장을 선택해서 정수를 만들려고 한다. 2, 1, 13을 순서대로 나열하면 정수 2113을 만들 수 있다. 또, 21, 1, 3을 순서대로 나열하면 2113을 만들 수 있다. 이렇게 한 정수를 만드는 조합이 여러 가지 일 수 있다. n장의 카드에 적힌 숫자가 주어졌을 때, 그 중에서 k개를 선택해서 만들 수 있는 정수의 ..
[브론즈 1] 백준 1834번 자바(JAVA) - 나머지와 몫이 같은 수
·
Basic/코딩테스트
문제 N으로 나누었을 때 나머지와 몫이 같은 모든 자연수의 합을 구하는 프로그램을 작성하시오. 예를 들어 N=3일 때, 나머지와 몫이 모두 같은 자연수는 4와 8 두 개가 있으므로, 그 합은 12이다. 입력 첫째 줄에 2,000,000 이하의 자연수 N이 주어진다. 출력 첫 줄에 구하고자 하는 수를 출력한다. 첫번째 시도 1. 먼저 시간제한을 봤다. 2. while문으로 하나씩 증가시키면서 값을 찾는 무식한 방법이 가능할까? 3. 시간 제한상 불가능할 거라 생각했다. 두번째 시도 1. 규칙을 찾아보자 N = 1 -> x N = 2 -> 3 N = 3 -> 4, 8 N = 4 -> 5, 10, 15 2. 나머지와 몫이 모두 같은 자연수의 갯수는 N-1개가 나온다. 3. 나머지와 몫이 모두 같은 자연수를 찾..
[브론즈 3] 백준 1547번 자바(JAVA) - 공
·
Basic/코딩테스트
문제 세준이는 컵 3개를 탁자 위에 일렬로 엎어놓았다. 컵의 번호는 맨 왼쪽 컵부터 순서대로 1번, 2번 3번이고, 세준이는 이 컵을 이용해서 게임을 하려고 한다. 먼저 1번 컵의 아래에 공을 하나 넣는다. 세준이는 두 컵을 고른 다음, 그 위치를 맞바꾸려고 한다. 예를 들어, 고른 컵이 1번과 2번이라면, 1번 컵이 있던 위치에 2번 컵을 이동시키고, 동시에 2번 컵이 있던 위치에 1번 컵을 이동시켜야 한다. 이때 공은 움직이지 않기 때문에, 공의 위치는 맨 처음 1번 컵이 있던 위치와 같다. 세준이는 컵의 위치를 총 M번 바꿀 것이며, 컵의 위치를 바꾼 방법이 입력으로 주어진다. 위치를 M번 바꾼 이후에 공이 들어있는 컵의 번호를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 컵의 위치를 바꾼 횟수 ..
[브론즈 1] 백준 3054번 자바(JAVA) - 피터팬 프레임
·
Basic/코딩테스트
문제 "피터팬 프레임"은 단어를 다이아몬드 형태로 장식하는 것이다. 알파벳 X를 피터팬 프레임으로 장식하면 다음과 같다. ..#.. .#.#. #.X.# .#.#. ..#.. "웬디 프레임"은 피터팬 프레임과 유사하지만, 다이아몬드를 '*'로 만드는 것이다. 알파벳 X를 웬디 프레임으로 장식하면 다음과 같다. ..*.. .*.*. *.X.* .*.*. ..*.. 단어가 주어졌을 때, 3의 배수 위치(세 번째, 여섯 번째, 아홉번째, ...)에 있는 알파벳은 웬디 프레임으로, 나머지 알파벳은 피터팬 프레임으로 장식하는 프로그램을 작성하시오. 웬디 프레임과 피터팬 프레임이 겹칠 경우에는, 웬디 프레임이 위에 있다. 입력 첫째 줄에 알파벳 대문자로 이루어진 최대 15글자 단어가 주어진다. 출력 다섯 줄에 걸쳐..
[Oracle] Select 문 (2) - WHERE 절
·
Basic/Database
WHERE 절 비교 연산자 =, !=, >, =, = 15000; -- 07/01/01 일 이후에 입사한 사원들의 이름과 입사일 출력 select first_name || '-' ||last_name 이름 , hire_date 입사일 from employees where hire_date > to_date('07/01/01', 'yy/mm/dd'); 또는 where hire_date >= '07/01/01'; -- 이름이 Lex인 직원의 연봉 출력 select first_name || '-' ||last_name 이름 , salary 입사일 from employees where first_name = 'Lex' or last_name = 'Lex'; 오라클 날짜데이터 비교하는 법 알아보기 https://..
[실버5] 백준 1094번 자바(JAVA) - 막대기
·
Basic/코딩테스트
문제 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른 다음에, 풀로 붙여서 길이가 Xcm인 막대를 만들려고 한다. 막대를 자르는 가장 쉬운 방법은 절반으로 자르는 것이다. 지민이는 아래와 같은 과정을 거쳐서 막대를 자르려고 한다. 지민이가 가지고 있는 막대의 길이를 모두 더한다. 처음에는 64cm 막대 하나만 가지고 있다. 이때, 합이 X보다 크다면, 아래와 같은 과정을 반복한다. 가지고 있는 막대 중 길이가 가장 짧은 것을 절반으로 자른다. 만약, 위에서 자른 막대의 절반 중 하나를 버리고 남아있는 막대의 길이의 합이 X보다 크거나 같다면, 위에서 자른 막대의 절반 중 하나를 버린다. 이제,..
[자바 / Java] 백준 알고리즘 기본 설정 (컴파일 에러)
·
Basic/코딩테스트
* 백준 홈페이지 Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net - 백준 자바 기본 설정 - 1. 회원가입 2. 사이트 우측 상단 설정 클릭 3. 좌측 사이드바에 언어 선택 4. 숨길 언어에 숨겨져 있는 Java 8을 볼 언어로 드래그 하신 후 하단 저장 클릭 * 난이도 보기 설정 https://velog.io/@jujusnake/백준-초기-세팅-및-계획 해당 사이드 참고하시면 됩니다! 백준이 난이도 별로 정리되어 있는데 그 난이도가 완벽하게 객관적이진 않습니다. 하단에 백준 알고리즘 공부 계획에 유튜브 링크 올라와 있는데 스터디 외에 공부하실 때 참고하셔도 좋습니다. * 자바 코드..
Comparable과 Comparator
·
Basic/코딩테스트
Comparable과 Comparator는 인터페이스(interface)로 사용하기 위해서는 인터페이스 내에 선언된 메소드를 '구현'해야 사용할 수 있습니다. Comparable 1. compareTo(T o) 메소드를 재정의(Override)해야 사용할 수 있다. 2. 자기 자신과 매개변수 객체를 비교 (자기 자신과 파라미터로 들어오는 객체 비교) 3. 크기가 작다면 음수, 동일하다면 0, 클 경우 양수 리턴. 4. 오름차순 정렬을 할 때 주로 사용 Comparator 1. 실직적으로 구현해야하는 것은 compare(T o1, T o2)이다. 2. 두 매개변수 객체를 비교 (자신이 아닌 파라미터로 들어오는 두 객체 비교) 3. 내림차순이나 특별한 기준에 따라 비교할 때 주로 사용 해당 인터페이스를 사용..
코드플리
코드 플레이 리스트