[Java Algorithm] 프로그래머스 Lv.0 _ 간단한 논리 연산
·
Algorithm Study
[문제]boolean 변수 x1, x2, x3, x4가 매개변수로 주어질 때, 다음의 식의 true/false를 return 하는 solution 함수를 작성해 주세요.- (x1 ∨ x2) ∧ (x3 ∨ x4) [Algorithm]논리 연산자에 대해 알고 있으면 아주 쉬운 문제 .. [Code]class Solution { public boolean solution(boolean x1, boolean x2, boolean x3, boolean x4) { return (x1 || x2) && (x3 || x4); }} [+ Plus]* 논리 연산자와 비트 연산자https://velog.io/@yeoonnii/JAVA-%EB%85%BC%EB%A6%AC%EC%97%B0%EC%82%B0%..
[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 2
·
Algorithm Study
[문제]정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e, k] 꼴입니다.각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 k보다 크면서 가장 작은 arr[i]를 찾습니다.각 쿼리의 순서에 맞게 답을 저장한 배열을 반환하는 solution 함수를 완성해 주세요.단, 특정 쿼리의 답이 존재하지 않으면 -1을 저장합니다. [Algorithm]반복문을 외부와 내부에 사용하여 조건을 만족하는 값을 찾는다.1. 외부 반복문 2차원 배열 queries의 길이만큼 실행queries의 원소를 반복하면서 각 query의 원소들을 s,e,k에 각각 할당 + min값을 선언하여 조건에 이후 내부 반복문에서 조건에 알맞는 min..
[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 3
·
Algorithm Study
[문제]정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [i, j] 꼴입니다.각 query마다 순서대로 arr[i]의 값과 arr[j]의 값을 서로 바꿉니다.위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요. [Algorithm]반복문을 통해 queries의 원소인 query를 모두 확인하여 query의 원소를 arr 배열 인덱스에 대입하기 [Code]class Solution { public int[] solution(int[] arr, int[][] queries) { int n = 0; for(int i =0; i arr[j]가 que..
[Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기
·
Algorithm Study
[문제]두 정수 a, d 와 길이가 n인 boolean 배열 included가 주어집니다. 첫째항이 a, 공차가 d인 등차수열에서 Included[i]가 i + 1 항을 의미할 때, 이 등차수열의 1항부터 n항까지 included가 true인 항들만 더한 값을 return 하는 solution 함수를 작성해주세요. [Algorithm]반복문에서 조건문을 사용하여 배열의 해당 인덱스가 true 경우의 등차수열 해당 항을 계산해서 더해주기 [Code]class Solution { public int solution(int a, int d, boolean[] included) { int answer = 0; for(int i=0; i [+ 다른 사람 풀이]impor..
[Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기
·
Algorithm Study
[문제]문자열 code 가 주어집니다.code를 앞에서부터 읽으면서 만약 문자가 "1"이면 mode를 바꿉니다. mode에 따라 code를 읽어가면서 문자열 ret을 만들어냅니다. mode는 0과 1이 있으며, idx를 0부터 code의 길이 - 1까지 1씩 키워나가면서 code[idx]의 값에 따라 다음과 같이 행동합니다.1. mode가 0일 때- code[idx]가 "1"이 아니면 idx가 짝수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.- code[idx]가 "1"이면 mode를 0에서 1로 바꿉니다.2. mode가 1일 때- code[idx]가 "1"이 아니면 idx가 홀수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.- code[idx]가 "1"이면 mode를 1에서 0으..
[Java Algorithm] 프로그래머스: 해시 _ 완주하지 못한 선수
·
Algorithm Study
[문제]수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.[제한사항]마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다.completion의 길이는 participant의 길이보다 1 작습니다.참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다.참가자 중에는 동명이인이 있을 수 있습니다. [Algorithm]1. HashMap을 이용해 참가자를 set     ➡️ 동명이인의 참가자가 ..
[Java Algorithm] 프로그래머스: 해시 _ 폰켓몬
·
Algorithm Study
[문제]당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다.1. 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택2. 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택3..
[Java Algorithm] 프로그래머스 Lv.0 _ 조건 문자열
·
Algorithm Study
[문제] 문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다. 두 수가 n과 m 이라면, ">", "=" : n >= m "", "!" : n > m "")){ answer = n >= m ? 1 : 0 ; } else if (eq.equals("=") && ineq.equals("")){ answer = n > m ? 1 : 0 ; } else if (eq.equals("!") && ineq.equals("