-
프로그래머스#3 재활 치료프로그래머스 2022. 5. 1. 18:28
8) 음양 더하기
https://programmers.co.kr/learn/courses/30/lessons/76501
코딩테스트 연습 - 음양 더하기
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re
programmers.co.kr
class Solution { public int solution(int[] absolutes, boolean[] signs) { int answer = 0; for(int i=0; i<absolutes.length; i++) { if(signs[i]==false) absolutes[i] *= -1; answer += absolutes[i]; } return answer; } }
풀고 찾아보니 한 줄로 정리해서 쓰는 방법도 있었다 ...
answer += signs[i]==false? absolutes[i]*-1 : absolutes[i];
9) 자연수 뒤집어 배열로 만들기
https://programmers.co.kr/learn/courses/30/lessons/12932
코딩테스트 연습 - 자연수 뒤집어 배열로 만들기
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345
programmers.co.kr
처음 생각한 방법 :
long을 String.valueOf() 로 String에 저장
=> toCharArray() 로 배열에 저장
=> for(int i=arr.length-1; i<=0; i--)와 count 변수를 활용해 역순으로 집어 넣기
안되는 이유를 모르겠는데 결과가 계속 빈 배열이 나옴 .. 어디서 잘못했는지 감이 잘 안옴 ㅠㅠ
결국 푼 방법
class Solution { public int[] solution(long n) { String temp = String.valueOf(n); int[] answer = new int[temp.length()]; int count = 0; while(n>0){ answer[count] = (int)(n%10); n /= 10; count++; } return answer; } }
10으로 나눈 나머지 = 가장 마지막 자리 숫자임 임을 이용해 순서대로 배열에 넣음
int 배열이므로 나머지 연산 결과를 int로 형변환 했음
오늘은 삽질을 너무 많이해서 두문제 밖에 못풀었다 ㅠ ㅠ
'프로그래머스' 카테고리의 다른 글
프로그래머스 #2016년 (0) 2022.05.06 프로그래머스 #내적 (0) 2022.05.06 프로그래머스 #모의고사 (0) 2022.05.03 프로그래머스 #2 재활 치료 (0) 2022.04.29 프로그래머스 #1 재활 치료 (0) 2022.04.28