Programming/Algorithm

Programming/Algorithm

[Hackerrank] JumpingOnClouds - java

Hackkerank의 Interview prepare ket 중 Warm-up Challenges의 JumpingOnClouds 문제 풀이 Java 코드 [제약] - 점프는 현재 현재 인덱스에서 1 또는 2 증가한 인덱스까지만 가능. - 점프 가능한 구름의 값은 0, 피해야 하는 구름의 값은 1. - 구름을 통과할 수 있는 최소 점프 수를 구하라. [전략] - 최소 점프 수 이므로, 뛸 수 있는 최대 거리(2)를 우선적으로 탐색 - 최소 점프가 2므로, 피해야 하는 구름은 연속으로 있을 수 없다. (ex: 0 1 1 ) public class JumpingOnTheCloud { // Complete the jumpingOnClouds function below. static int jumpingOnClo..

Programming/Algorithm

[Java-알고리즘] Frog Jumps

Problems: 개구리의 현재 좌표는 X이며, 가고 싶은 위치의 좌표는 Y이다. 개구리는 한 번에 D 만큼 이동할 수 있다. 개구리가 Y까지 가는데 최소 몇번 이동해야 하는지 구하라. 조건: - 개구리는 최소 Y와 같거나 그 이상 이동하고 싶어 한다. - X, Y, D는 모두 정수이며 값의 범위는 [1.. 1,000,000,000]이다. - X ≤ Y이다. Idea: 원하는 곳의 좌표 - 현재 좌표 = 거리 거리 / 이동 가능 거리 = 이동 횟수 거리 % 이동 가능 거리 = 남은 거리 남은 거리 < 원하는 거리 = 한번 더 이동해야 한다. Solution: class Solution { public int solution(int X, int Y, int D) { if(X == 1 && Y ==1){ r..

Programming/Algorithm

[Java-알고리즘] 카카오 블라인드 코딩 테스트 - 비밀 지도

알고리즘 공부하다가 해당 문제 내용이 나와서 풀이를 올려본다. 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 “공백”(“ “) 또는 “벽”(“#”) 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 “지도 1”과 “지도 2”라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. “지도 1”과 “지도 2”는 각각 정수 배..

Programming/Algorithm

[Java-알고리즘] Two Sum

[Problem] Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same element twice. [Example1] Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1]. [Example2] Given nums = [3, 2, 4], target = 6, Because nums[1] + num..

Programming/Algorithm

[Java-알고리즘] RangeSumBinaraySearchTree

[Problem] Given the root node of a binary search tree, return the sum of values of all nodes with value between L and R (inclusive). The binary search tree is guaranteed to have unique values. [Example1] Input: root = [10,5,15,3,7,null,18], L = 7, R = 15 Output: 32 [Example2] Input: root = [10,5,15,3,7,13,18,1,null,6], L = 6, R = 10 Output: 23 [Note] The number of nodes in the tree is at most 10..

Programming/Algorithm

[Java-알고리즘] toLowerCase Implemet

[Problem] Implement function ToLowerCase() that has a string parameter str, and returns the same string in lowercase. [Example1] Input: "Hello" Output: "hello" [Example2] Input: "here" Output: "here" [Example3] Input: "LOVELY" Output: "lovely" [Solution] import java.lang.StringBuilder; class Solution { public String toLowerCase(String str) { char[] characters = str.toCharArray(); int strLen = st..

Programming/Algorithm

[Java-알고리즘] Split a String in Balanced Strings

[Problem] Balanced strings are those who have equal quantity of 'L' and 'R' characters. Given a balanced string s split it in the maximum amount of balanced strings. Return the maximum amount of splitted balanced strings. [Example1] Input: s = "RLRRLLRLRL" Output: 4 Explanation: s can be split into "RL", "RRLL", "RL", "RL", each substring contains same number of 'L' and 'R'. [Example2] Input: s ..

Programming/Algorithm

[Java-알고리즘] Jewels and Stones

[Problem] You're given strings J representing the types of stones that are jewels, and S representing the stones you have. Each character in S is a type of stone you have. You want to know how many of the stones you have are also jewels. The letters in J are guaranteed distinct, and all characters in J and S are letters. Letters are case sensitive, so "a" is considered a different type of stone ..

JohnMark
'Programming/Algorithm' 카테고리의 글 목록 (2 Page)