일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- CS
- linux
- Spring
- 스포티파이
- python
- Computer Science
- MYSQL
- Spring JPA
- SECS
- 자바
- programmers
- c
- SECS/GEM
- SECS-II
- spotify
- regression
- Baekjoon
- Spotify Api
- C++
- spring boot
- modern c++
- 파이썬
- java
- SW Expert Academy
- 프로그래머스
- 회원가입
- Gem
- 백준
- SWEA
- 회귀
Archives
- Today
- Total
비버놀로지
[Programmers 프로그래머스] 12947 하샤드 수 본문
728x90
programmers.co.kr/learn/courses/30/lessons/12947
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.
먼저 입력값을 String으로 변환해주어, 각각의 자리를 배열로 만들어 준다.
그리고 각 자릿수를 합해서 sum 값을 저장해 주고, sum값을 입력값을 나누어 0이 된다면 true를 0이 아니라면 false를 출력할 수 있도록 했다.
import java.util.Arrays;
class Solution {
public boolean solution(int x) {
boolean answer = true;
String s=String.valueOf(x);
int arr[]=new int[s.length()];
for (int i = 0; i < s.length(); i++) {
arr[i]=s.charAt(i)-'0';
}
int sum=Arrays.stream(arr).sum();
if(x%sum==0) {
answer=true;
}else {
answer=false;
}
return answer;
}
}
728x90
'ALGORITM > JAVA' 카테고리의 다른 글
[Programmers 프로그래머스] 12950 행렬의 덧셈 (0) | 2021.01.08 |
---|---|
[Programmers 프로그래머스] 12948 핸드폰 번호 가리기 (0) | 2021.01.08 |
[Programmers 프로그래머스] 12944 평균 구하기 (0) | 2021.01.08 |
[Programmers 프로그래머스] 12943 콜라츠 추측 (0) | 2021.01.08 |
[Programmers 프로그래머스] 12940 최대공약수와 최소공배수 (0) | 2021.01.08 |
Comments