프로그래머스(Java) (192) 썸네일형 리스트형 [프로그래머스] 저주의 숫자 3 코드 힌트숫자 증가 및 조건 확인:특정 변수를 1씩 증가시키며, '3'이 포함되거나 3의 배수가 되는 순간을 찾아냅니다.이 과정은 주어진 매개변수 n이 0이 될 때까지 반복됩니다. 변수가 증가하는 동안, n은 원하는 횟수만큼 감소하게 됩니다.'3' 포함 여부 및 3의 배수 확인:숫자를 문자열로 변환한 후, '3'이 포함되어 있는지를 검사합니다. 이 조건을 만족하는지 확인하여 적절히 처리합니다.또한, 숫자가 3의 배수인지를 확인하는 조건을 사용합니다. 이 두 조건 중 하나라도 만족하면 반복문이 건너뛰어집니다.매개변수 감소:위의 조건을 만족하지 않을 때만 n이 1씩 감소됩니다. 이로 인해 특정 조건을 만족하는 숫자들을 건너뛰게 됩니다.결과적으로 n이 0이 될 때까지 반복하여, 최종 결과를 반환합니다.정답은 .. [프로그래머스] 등수 매기기 코드 힌트평균 점수 계산:각 학생의 평균 점수를 계산하려면, 학생의 각 과목 점수를 합산한 후, 과목 수로 나누어 평균을 구합니다.이를 위해 2중 for 루프를 사용하여 각 학생의 점수를 순회하고 평균을 계산합니다.평균 점수를 정렬하여 순위 매기기:평균 점수를 저장한 배열을 List로 변환하여 정렬합니다.Collections.sort와 Collections.reverseOrder를 사용하여 내림차순으로 정렬합니다.순위 부여:정렬된 리스트에서 각 평균 점수의 인덱스를 찾고, 이 인덱스에 1을 더하여 순위를 매깁니다.List.indexOf 메소드를 사용하여 평균 점수의 위치를 찾아 순위를 계산합니다. 정답은 더보기 클릭더보기import java.util.*;class Solution { public i.. [프로그래머스] 로그인 성공? 코드 힌트HashMap 사용하기:HashMap을 사용하지 않고, for 루프를 사용하여 사용자 정보를 직접 검색할 수도 있습니다.HashMap을 사용하면 사용자 정보를 효율적으로 저장하고 검색할 수 있습니다.HashMap을 사용하여 사용자 ID를 키로, 비밀번호를 값으로 저장합니다.데이터베이스 배열 순회:db 배열을 순회하면서 사용자 ID와 비밀번호를 HashMap에 추가합니다.각 사용자의 ID를 키로, 비밀번호를 값으로 저장하여 나중에 쉽게 검색할 수 있습니다.비밀번호 확인:id_pw[0] (사용자 ID)를 키로 HashMap에서 비밀번호를 검색합니다.비밀번호가 존재하지 않으면 "fail"을 반환합니다.비밀번호가 다르면 "wrong pw"를 반환합니다.비밀번호가 맞으면 "login"을 반환합니다. 정.. [프로그래머스] OX퀴즈 코드 힌트문제 구문 분리:각 문제 문자열을 공백(" ")을 기준으로 분리하여 피연산자, 연산자, 예상 결과를 추출합니다.예를 들어, "3 + 4 = 7"을 "3", "+", "4", "7"로 분리합니다.연산자에 따른 연산 수행:연산자를 확인하고, 적절한 산술 연산(덧셈 또는 뺄셈)을 수행하여 결과를 계산합니다."+" 연산자는 덧셈을 수행하고, "-" 연산자는 뺄셈을 수행합니다.결과 비교 및 저장:계산한 결과가 예상 결과와 일치하는지 비교합니다.결과가 일치하면 "O"를, 그렇지 않으면 "X"를 결과 배열에 저장합니다.결과 배열 반환:최종적으로 각 문제에 대한 결과를 포함하는 배열을 반환합니다. 정답은 더보기 클릭더보기class Solution { public String[] solution(Strin.. [프로그래머스] 외계어 사전 코드 힌트spell 배열의 문자 조합:spell 배열을 일일이 조합해도 좋지만, 사실 중요한 것은 spell 배열에 있는 각 알파벳의 개수입니다.이를 위해 new int[26] 배열을 사용하여 알파벳의 개수를 세고, 이를 기반으로 다른 단어와 비교할 수 있습니다.dic 배열의 각 단어에서 알파벳 개수 카운트:spell에서 사용한 것과 동일한 방식으로, dic 배열의 각 단어에서도 알파벳의 개수를 카운트합니다.주의할 점은 각 단어를 비교할 때마다, 카운트 배열을 초기화해야 한다는 것입니다. 그렇지 않으면 이전 단어의 알파벳 개수가 남아 있을 수 있습니다.배열 비교하기:두 배열의 알파벳 개수를 비교할 때, 직접 for 문을 작성할 수도 있지만, Java에서 제공하는 Arrays.equals() 메소드를 사용.. [프로그래머스] k진수에서 소수 개수 구하기 코드 힌트진법 변환:주어진 수를 k진법으로 변환해야 합니다. 변환 과정에서는 n을 k로 나눈 나머지를 문자열에 계속 추가하고, n을 k로 나누는 과정을 반복합니다. n이 k보다 작아지면 마지막 몫을 추가하고, 최종 문자열을 reverse하여 반환합니다.조건에 맞는 소수 찾기:문제의 핵심은 진법 변환 후 나온 숫자들 중에서 소수를 찾는 것입니다. 이를 위해 변환된 문자열을 '0'을 기준으로 split() 하여 숫자 배열로 나눈 다음, 각 숫자가 소수인지 확인해야 합니다.소수 판별:각 숫자가 소수인지 확인하는 방법은 간단합니다. 숫자 1은 소수가 아니므로 바로 제외하고, 2부터 해당 숫자의 제곱근까지의 수로 나누어지지 않는지 확인합니다. 나누어지는 숫자가 없으면 소수입니다.진법 변환 후 소수 개수 계산:입력.. [프로그래머스] 평행 코드 힌트두 선이 평행하다는 말은 같은 기울기를 가지고 있다는 의미입니다. 즉, 기울기를 구하는 문제입니다.기울기 계산:주어진 두 점 사이의 기울기를 계산하는 함수입니다. 기울기는 두 점의 y좌표 차이를 x좌표 차이로 나누어 계산됩니다.기울기 계산 시, double 형을 사용하여 정확한 비교를 위해 형 변환을 적용합니다.평행 여부 확인:주어진 4개의 점이 주어졌을 때, 각각의 두 쌍의 선분이 평행한지를 확인합니다. 이때, 세 가지 경우의 선분 쌍을 고려합니다.두 선분의 기울기가 같으면 해당 선분들은 평행하므로, 이때 1을 반환합니다.결과 반환:모든 경우의 선분 쌍을 비교한 후에도 평행하지 않으면 0을 반환합니다. 정답은 더보기 클릭더보기class Solution { // 주어진 네 개의 점이 이루.. [프로그래머스] 문자열 나누기 코드 힌트문자 카운트하기:주어진 문자열에서 특정 문자(target)와 다른 문자의 개수를 추적해야합니다.저는 이를 위해 배열을 사용하였지만 변수로 +1 -1로 하셔도 무관합니다. 또는 2개의 변수를 사용하셔도 됩니다.문자 개수 비교:문자열을 순회하면서 target 문자와 일치하는 경우와 그렇지 않을 경우 카운트를 관리합니다.카운트가 같아질 때마다 결과를 1 증가시킵니다. 이는 균형 잡힌 문자열이 하나 완성되었음을 의미합니다.마지막 문자열 처리:반복이 끝난 후에도 카운트가 같지 않다면, 남아있는 문자열이 있으므로 결과에 1을 더해줍니다. 정답은 더보기 클릭더보기class Solution { public int solution(String s) { int result = 0; // 결과를.. 이전 1 ··· 4 5 6 7 8 9 10 ··· 24 다음