public class Solution {
public int solution(int n) {
int answer = 0; // 결과를 저장할 변수 초기화
while (n != 0) { // n이 0이 아닐 때까지 반복
answer += n % 10; // n의 일의 자리 숫자를 answer에 더함
n /= 10; // n을 10으로 나누어 일의 자리를 없앰
}
return answer; // 최종 결과 반환
}
}
기억에 남는 문제
class Solution {
public long[] solution(int x, int n) {
long[] answer = new long[n];
for (int i = 0; i < n; i++) {
answer[i] = x + ((long)x * i);
}
return answer;
}
}
long 타입 형변환 때문에 오류가 있었다.
class Solution {
public int[] solution(long n) {
String str = n + "";
int[] answer = new int[str.length()];
for (int i = 0; i < answer.length; i++) {
answer[i] = str.charAt(answer.length-i-1) - '0'; // -'0' :아스키 코드값
}
return answer;
}
}
다시 풀어봐야 할 문제
import java.util.Arrays;
import java.util.Collections;
class Solution {
public long solution(long n) {
long answer = 0;
String str = "";
String[] strArr = str.split("");
Arrays.sort(strArr, Collections.reverseOrder());
str = String.join("", strArr);
answer = Long.parseLong(str);
return answer;
}
}
// str[] arr = (n+"").split("")
// 숫자를 문자열 배열로
class Solution {
public long solution(long n) {
long answer = 0;
double x = Math.sqrt(n);
if (x % 1 > 0) {
answer = -1;
} else {
answer = (long) Math.pow(x + 1, 2);
}
return answer;
}
}
class Solution {
public boolean solution(int x) {
String str = x + "";
String[] xArr = str.split("");
int answer = 0;
for (String num : xArr) {
answer += Integer.parseInt(num);
}
return (x % answer == 0? true : false);
}
}