본문 바로가기

코딩 테스트 연습/알고리즘

(25)
[ 코딩 테스트 ] 자연수 뒤집어 배열로 만들기 문제조건 정답class Solution { public int[] solution(long n) { String str = n + ""; int[] answer = new int[str.length()]; int count = 0; while (n > 0) { answer[count] = (int)(n%10); n /= 10; count++; } return answer; }}class Solution { public int[] solution(long n) { int length = Long.toString(n).length(); ..
[ 코딩 테스트 ] x만큼 간격이 있는 n의 숫자 문제조건 정답class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; for (int i=0; i   후기 long 타입 answer 배열을 새로 생성해주고 길이는 n 값으로 지정해줬다그리고 배열 길이만큼 for 문을 돌려서배열의 index 에는 i 를 넣어주고 x 값과 i + 1 한 값을 곱해서 배열에 넣어주기 i + 1 을 한 이유는 for 문을 돌릴 때 index 번호를 위해 0부터 돌려서x가 만약 2일 경우, 2 X 0 이 되므로 배열 값 첫번째에 0이 들어가기 때문에 + 1을 해줘야 한다 x 값을 int로 받아오고 리턴 타입은 long 이기 때문에강제형변환 꼭 해주기
[ 코딩 테스트 ] 나머지가 1이 되는 수 찾기 문제조건 정답class Solution { public int solution(int n) { int answer = 0; for (int i=1; i   후기 사실 문제만 보고 아 쉽네~~ 하면서 도전했다가 어라..? 어라?? 했다 ㅎ (빨간글씨 많이 봄)이래서 악당들이 방심해서 히어로한테 당하는 모양이다 이번에도 나눌 것이니 i 를 1로 지정했다for 문을 n 값 미만까지만 돌리고 n과 i를 나눠서 나머지가 1일 때 answer의 값을 i에 대입하고나머지가 1이 되도록 하는 가장 자연수를 출력해야 하기 때문에값이 들어오면 바로 for문을 종료시키기 위해 break 를 사용했다 코드는 꼼꼼하게 보자!(== 두개 안적었다가 빨간색, ; 안적었다가 빨간색, an..
[ 코딩 테스트 ] 약수의 합 문제조건 정답class Solution { public int solution(int n) { int answer = 0; for (int i=1; i   후기 문제에서 약수를 구하라고 해서 순간적으로 수학=>공식?=>어려움!!!! 이 머리속을 지배했다 하지만 우리에겐 계산을 도와주는 컴퓨터가 있다!약수는 n 으로 나눴을 때 나머지가 0인 값이다 나눠줄 거니까 i 를 1부터 시작했다  (2부터 돌리는게 더 좋을 것 같다)정수 n을 받아서 i를 나눴을 때 0이 되면 answer 값에 더해주는 코드이다
[ 코딩 테스트 ] 자릿수 더하기 문제조건 정답public class Solution { public int solution(int n) { int answer = 0; while(n > 0) { answer += n % 10; n /= 10; } return answer; }}  후기 처음에는 String 을 이용해서 123을 1/2/3 나눠서 구할까 싶었지만나머지 연산자를 이용해서 값을 구하기로 했다 (훨씬 코드가 간단해서) 123 을 10으로 나누면 12.3 이므로 % 연산자를 통해서 3이 나오게 된다나머지 값은 return 할 변수에 넣고다시 123을 10으로 나눠서 이번엔 / 연산자를 통해 몫을 다리 while문 조..
[ 코딩 테스트 ] 평균 구하기 문제조건 정답class Solution { public double solution(int[] arr) { double answer = 0; for (int i : arr) { answer += i; } answer /= arr.length; return answer; }} 메모리: 77 MB, 시간: 0.04 ms  후기 향상된 for 문 사용해보기
[ 코딩 테스트 ] 짝수와 홀수 문제조건 정답class Solution { public String solution(int num) { String answer = ""; if (num % 2 != 0) { answer = "Odd"; } else if (num == 0) { answer = "Even"; } else { answer = "Even"; }; return answer; }} 메모리: 72.4 MB, 시간: 0.02 ms  후기 제한 조건에 0은 짝수라고 해서짝수의 조건도 추가해놨다 일단 그렇다고 하니 코드를 넣었는데0 이 짝수였나...?
[ 코딩 테스트 ] 배열의 평균값 문제조건 정답class Solution { public double solution(int[] numbers) { double answer = 0; for (int i=0; i 메모리: 78.2 MB, 시간: 0.05 ms  class Solution { public double solution(int[] numbers) { double answer = 0; for (int i : numbers) { answer += i; } answer /= numbers.length; return answer; }} 메모리: 71.9 MB, 시간: 0.03 ms  후기 numbers[i] 가 아..