[백준/Java] 1676번 팩토리얼 0의 개수
·
Algorithm/java
문제 풀이이 문제는 정수의 특징을 알고 있으면 쉽게 풀 수 있는 문제이다. 문제에서 요구하는 결과는 숫자 10000가 있다면 일의 자리부터 0이 아닌 숫자가 나올 때까지 올라가며 다른 숫자를 만날때까지 0의 개수를 구하는 것이다.10000이 주어진다면 0의 개수는 4가 될 것이고, 10100이 주어진다면 0의 개수는 2가 될 것이다. 그렇다면 숫자들의 곱에서 0이 나올 수 있는 숫자들은 뭐가 있을까 ?? 바로 2 와 5 의 곱이다. 위의 예시를 보자.일단 15는 일의 자리에 0이 존재하지 않는다.15를 소인수 분해하면 3 x 5로 나타낼 수 있다. 2는 존재하지 않는다는 것을 보여주기 위해 2의 0제곱을 넣어줬다.15에 대한 2의 지수는 0개 5의 지수는 1개가 된다. (파란색 글씨 참고)5의 지수는 1..
[백준/Java] 1715번 카드 정렬하기
·
Algorithm/java
문제 풀이우선순위 큐로 풀어야하는 문제이다.오름차순으로 정렬된 값들 중 가장 작은 두 값을 더해 나가야 최소값을 구할 수 있기 때문이다.예제 입력이 1개 밖에 안 나와있는데 이 예제만 생각해서 문제를 풀면 틀릴 수도 있다. BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));StringTokenizer st = new StringTokenizer(bf.readLine());PriorityQueue queue = new PriorityQueue();int N = Integer.parseInt(st.nextToken());for(int i=0; i1. 문제에서 주어진 입력을 위한 코드를 작성한다.우선순위 큐인 queue를 생성하고..
[프로그래머/Java] 기지국 설치 (Lv. 3)
·
Algorithm/java
문제풀이 나는 최대한 시간이 짧게 구현하고 싶어서 전체 아파트의 개수만큼 반복하는 것이 아니라, 이미 설치된 기지국의 위치를 기준으로 필요한 부분만 집중해서 기지국을 설치하도록 구현했다.첫번째 입출력 예로 예를 들어보면서 설명을 하겠다.  아파트 개수: n = 11이미 설치된 기지국 위치: stations = [4, 11]기지국의 전파 도달 범위: w = 1 1. 현재 4번째, 7번째 아파트에 기지국이 설치가 되어있다.   2. 각 기지국이 전파를 양쪽으로 w=1 칸 씩 전달할 수 있으므로 아래와 같이 3,5,10번째 아파트에는 기지국이 설치되지 않아도 된다.  3. 이제 나머지 아파트들 중 어느 아파트에 기지국을 설치해야하는지가 문제인데여기서 포인트는 한 기지국을 기준으로 왼쪽 아파트들만 확인하는 것이..
[백준/Java, Kotlin] 1484번 다이어트
·
Algorithm/java, kotlin
문제풀이(Java만 풀이)문제의 핵심은 합차 공식을 이용하는 것이다. 문제에서 주어진 G킬로그램은 성원이의 현재 몸무게의 제곱에서 성원이가 기억하고 있던 몸무게의 제곱을 뺀 것이다.를 식으로 나타내면 위의 합차 공식과 동일하다. 그래서 (현재 몸무게 + 기억 몸무게) (현재 몸무게 - 기억 몸무게) = G가 된다면 현재 몸무게로 하다. BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));StringTokenizer st = new StringTokenizer(bf.readLine());int G = Integer.parseInt(st.nextToken());ArrayList al = new ArrayList();1. 문제에서 ..
나연쓰
'java' 태그의 글 목록