프로그래머스 - 자연수를 뒤집어 배열로 만들기 Java
·
코테 문제 풀이/프로그래머스
문제 설명자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. class Solution { public int[] solution(long n) { String str = ""+n; int[] answer = new int[str.length()]; int cnt = 0; while(n>0){ answer[cnt] = (int)(n%10); n /=10; cnt++; } return answer; }} ""+n 을 통해 문자열로 변..
프로그래머스 - x만큼 간격이 있는 n개의 숫자
·
코테 문제 풀이/프로그래머스
문제 설명함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; long num = x; for(int i=0; i 크기가 n인 배열을 선언해주고 x에서 시작해 x만큼 증가하는 숫자를 배열에 넣어준다.  https://school.programmers.co.kr/learn/courses/30/lessons/12954 프로그래머스코드 중심의 개..
프로그래머스 - 나머지 1이 되는 수 찾기 Java
·
코테 문제 풀이/프로그래머스
문제 설명자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. class Solution { public int solution(int n) { int answer = n; for(int i=1; i  n을 x로 나눴을 때 나머지가 1이어야 하는 가장 작은 수 찾기 이므로 1부터 n까지의 수로 n을 나눴을 때 나머지가 1이면 answer에 값을 넣어주는 대신 제일 작은 수를 찾아야 하므로 answer에 담긴 값보다 작으면 바꿔주는 방법 사용  https://school.programmers.co.kr/learn/co..
프로그래머스 - 약수의 합 Java
·
코테 문제 풀이/프로그래머스
문제 설명정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. class Solution { public int solution(int n) { int answer = 0; for(int num=1; num N의 약수는 1부터 N까지의 숫자 중 N을 이 숫자로 나눴을 때 나머지가 0인 숫자들이다.  https://school.programmers.co.kr/learn/courses/30/lessons/12928 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr
프로그래머스 - 자릿수 더하기 Java
·
코테 문제 풀이/프로그래머스
문제 설명자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. public class Solution { public int solution(int n) { int answer = 0; while(n>0){ answer += n%10; n /= 10; } return answer; }} n을 10으로 나눈 나머지는 각 자리수의 값이 나오게 된다. 예로 n이 123 일 때 각 자릿수의 합은 아래와 같은 과정을 통해 6이 나온다.123 / 10 = 12 ... 312 / 10..
프로그래머스 - 평균 구하기 Java
·
코테 문제 풀이/프로그래머스
문제 설명정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. class Solution { public double solution(int[] arr) { double answer = 0; double sum = 0.0; for(int num:arr){ sum += num; } answer = sum / arr.length; return answer; }} 입출력 예시를 보면 배열 [1,2,3,4]의 평균이 2가 아닌 2.5가 나와야 하므로 배열 원소의 총합을 담는 변수 sum을 int말고 doubl..
프로그래머스 - 짝수와 홀수 Java
·
코테 문제 풀이/프로그래머스
문제 설명정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. class Solution { public String solution(int num) { String answer = ""; answer = num%2==0? "Even" : "Odd"; return answer; }} 삼항 연산자를 사용해 풀이 https://school.programmers.co.kr/learn/courses/30/lessons/12937 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 ..
Spring의 IoC(제어의 역전), DI(의존성 주입) 이해하기
·
Spring
👇🏻이전 글2024.08.06 - [Spring] - Spring을 3 Layer Architecture로 역할 분리하기 IoC(제어의 역전)와 DI(의존성 주입)란? 좋은 코드, 즉 중복을 제거하고 표현이 명확한 코드, 처음 보는 사람도 쉽게 이해하고 수정할 수 있는 코드, 새로운 기능을 추가하더라도 구조에 큰 변화가 없는 코드를 만들기 위해서는 결합도와 의존성을 최소화 해야 한다.메모장 프로젝트 속 제어의 흐름은 Controller → Service → Repository 순서로 흐르게 되는데 이 때문에 한 부분에서의 코드 추가나 수정이 연쇄적으로 다른 부분들과도 이어져 개발에 있어 피로함과 비효율성을 일으킨다. 의존성 주입을 사용해 역순으로 흐르게 하면 결합도와 의존성이 최소화되어 이러한 문제를..