programmers(30)
-
[Programmers] Lv0 제곱수 판별하기 Java
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 자바에선 루트를 Math.sqrt(number)로 제공해준다. 또한 자바에선 나머지 연산자 %를 사용할 수 있기 떄문에 n을 루트로 나눈 것에 나머지가 0이면 즉 나누어 떨어지면 제곱수라고 반환하면 된다. 소스 코드 public class Solution { public int solution(int n) { return n % Math.s..
2023.01.21 -
[Programmers] Lv0 세균 증식 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120910 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 처음 세균 n마리가 있을 떄 t 시간 경과후 세균의 수는 총 n * 2^t 이다. 자바에서는 Math.pow(num, 제곱수)를 이용하여 제곱을 구할 수 있다. 이때 반환되는 타입은 double이기 때문에 형변환을 통해 int로 변환 시켜 줘야 된다. 소스 코드 class Solution { public int solution(int n, ..
2023.01.20 -
[Programmers] Lv0 문자열 정리하기(2) JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 먼저 정렬을 하기 전에 먼저 my_string을 소문자로 변경해준다. 소문자로 변경을 해주는 이유는 sort로 정렬을 할시 대문자가 소문자 보다 앞으로 오기 때문이다. Bcad로 예를 들면 Bacd로 정렬이 되기 때문에 소문자로 먼저 변경을 해줘야 한다. 위의 이유는 아스키 코드로 정렬할시 A는 65이고 a는 97이기 때문에 (이는 char..
2023.01.20 -
[Programmers] Lv0 7의 개수 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120912 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 각각의 배열은 전부 정수형인 int로 되어있다. 7을 검출해낼려면 int에서 String으로 변환하여 각각 비교 해야한다. 여기서는 StringBuilder로 변수 numberString을 만들고 거기에 문자열을 넣어서 한번에 검사를 한다. numberString.charAt(index)은 index에 접근하여 해당 요소를 char 형태로 ..
2023.01.20 -
[Programmers] Lv0 잘라서 배열로 저장하기 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 배열의 총길이는 my_str의 길이에서 n을 나눈 것을 올림 처리를 하면 된다. 몫이 n개의 수가 있는 배열의 수가 나머지가 남은 문자열이다. 배열의 총 길이가 정해졌기 때문에 이에 각 배열에 적절히 잘라서 넣으면 된다. 이때 배열의 길이에 초과하여 접근하지 않게 마지막 인덱스에 접근을 할 때 배열의 길이에 초과하여 접근하지 않게 해 줘야 ..
2023.01.20 -
[Programmers] Lv0 문자열 밀기 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120921 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 최대 검사 횟수는 위에 보이는 것처럼 문자열의 길이의 -1 이다. (소스 코드에서는 0회 부터 시작하고 검사의 순사상 문자열 길이 만큼만 반복해준다.) 최대 검사 횟수를 만큼 반복하여 문자열을 밀어 B와 비교를 한다 비교했을시 같으면 해당 횟수를 리턴한다. 만약 최대 검사 횟수가 넘어가면 -1을 리턴한다. 소스 코드 class Solutio..
2023.01.19 -
[Programmers] Lv0 종이 자르기 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120922 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 종이 자르기의 최소 횟수는 M * N - 1 이다. 소스 코드 class Solution { public int solution(int M, int N) { int answer = M * N - 1; return answer; } }
2023.01.18 -
[Programmers] Lv0 연속된 수의 합 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120923 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 이 문제는 수학을 이용하여 첫 번째 숫자를 구할 수 있다. 첫 번째 숫자를 구한 후 1씩 더하는 배열을 만들면 된다. 첫 번째 숫자 구하는 방법 1. num이 5, total이 5라고 가정을 하면 total = n + 0 + n + 1 + n + 2 + n + 3 + n + 4로 나타낼 수 있다. 2. n이 5개이므로 5n으로 나타내면 다음..
2023.01.18 -
[Programmers] Lv0 다음에 올 숫자 JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 등차수열이 아니면 등비수열이므로 등비수열과 등차수열을 구별하는 방법이 필요하다. 여기에서는 등차수열을 이용하여 이 문제를 풀 예정이다. 이후 등차 수열과 등비수열에 따라서 코드를 작성하면 된다. 등차수열인지 확인하는 방법 등차수열의 정의 : 1,3,5,7,9,⋯처럼 연속한 두 항의 차가 일정한 수열 위에서 간단하게 보면 2씩 증가하는 등차 ..
2023.01.18 -
[Programmers] Lv0 옹알이(1)(2) JAVA
문제 출처 [프로그래머스 코딩 테스트 연습] https://school.programmers.co.kr/learn/courses/30/lessons/120956 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 이 문제는 다음 단계로 나뉜다. 1. 주어진 발음 중에서 아기가 말할 수 있는 단어를 검사 2. 같은 단어를 반복하는지 검사 3. 1~2를 통과한 발음은 성공한 발음 4. 3에서 성공한 발음들만 더한다. 주어진 발음중에서 앞부분만 아기가 말할 수 있는 단어를 검사 아기가 발음을 할 수 있는 단어는 "aya", "ye", "woo", "ma"..
2023.01.17