일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- STS
- POJO
- @Spring-Test
- Di
- pointcut
- Ubunt
- Linux
- java
- java spring
- XML
- 프로퍼티
- spring
- Framework
- JdbcTemplate
- Dependency Injection
- myBatis
- 컨테이너
- 마이바티스
- unix
- @AspectJ
- JDBC TEMPLATE
- spring framework
- SpringJDBC
- Spring JDBC
- @test
- Spring Boot
- spring aop
- AOP
- 리눅스
- @JUnit
Archives
- Today
- Total
개키우는개발자 : )
[알고리즘 자바] 자릿수의 합 본문
반응형
광고 클릭은 개발자(저) 에게 큰 힘이 됩니다!!'ㅁ'
| 문제
N개의 자연수가 입력되면 각 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수를 출력 하는 프로그램을 작성하세요. 각 자연수의 자릿수의 합을 구하는 함수를 int digit_sum(int x)를 꼭 작성해서 프로그래밍 하세요.
| 입력설명
자연수의 개수 N(3<=N<=100)이 주어지고, 그 다음 줄에 N개의 자연수가 주어진다. 각 자연수의 크기는 10,000,000를 넘지 않는다.
| 출력설명
자릿수의 합이 최대인 자연수를 출력한다.
| 입력 예제
3
125 15232 97
| 출력 예제
97
| 풀이
digit_sum(125)
x = 125 , tmp = 5 = 125 % 10 , sum = 0+5 , x = 12 = 125/10
x = 12 , tmp = 2 = 12 % 10 , sum = 5+2 , x = 1 = 12/10
x = 1 , tmp = 1 = 1 % 10, sum = 7+1 , x = 0 = 1/10
한 자리씩 더해줌
8 > -2147...
max = 8;
res = 125
13 > 8
max = 13;
res = 15232
16 > 13
max = 16;
res = 97
public class Test10 {
static int digit_sum(int x){
int sum = 0, tmp;
while(x>0){
tmp=x%10;
sum=sum+tmp;
x=x/10;
}
return sum;
}
public static void main(String[] args) {
int n, i, sum = 0, max=-2147000000, res = 0;
int[] num = {125,15232,97};
n = 3;
for(i=0;i < n; i++){
sum=digit_sum(num[i]);
if(sum > max){
max=sum;
res=num[i];
}
}
System.out.printf("%d\n",res);
}
}
반응형
'Algorithm Programming > Java' 카테고리의 다른 글
[자바 알고리즘] 모두의 약수 (제한시간 1초) (0) | 2020.01.09 |
---|---|
[자바 알고리즘] 올바른 괄호 (0) | 2020.01.09 |
[자바 알고리즘] 영어단어 복구 (0) | 2020.01.08 |
[자바 알고리즘] 숫자만 추출 (0) | 2020.01.08 |
[자바 알고리즘] 나이 계산 (0) | 2020.01.07 |
Comments