HOT프로그래밍

<Dovelet> 4계단 - 암스트롱 수 본문

#include <알고리즘>/Dovelet

<Dovelet> 4계단 - 암스트롱 수

NetShin 2018. 5. 2. 13:56

암스트롱 수... 닐암스트롱은 알지만 암스트롱 수는 생전 처음 보는 수이다

세자리 수를 한자리씩 나눠서 abc라고 해보자

예를 들어 a = 1, b = 5, c = 3 이렇게해서 abc는 153이다


여기서 abc = a*a*a+b*b*b+c*c*c가 성립할 때 암스트롱 수라고 부른다고한다


즉 153 = 1*1*1+5*5*5+3*3*3이 성립하므로 153은 암스트롱 수이다

나의 설명이 이해가 안될 수 도 있으니 한번 문제로 넘어가보자


http://59.23.150.58/30stair/amstrong/amstrong.php?pname=amstrong


세자리 자연수 abc 가

abc = a*a*a + b*b*b + c*c*c
를 만족할 때 암스트롱 수라한다.

한 가지 예를 보면 153 = 1*1*1 + 5*5*5 + 3*3*3 이므로 153 은 암스트롱 수이다.

입력

입력은 없다.

출력

한 줄에 하나 씩 크기 순으로 세자리 암스트롱 수를 모두 출력한다. 





이게 내가 푼코드인데 알아두면 자주 써먹을 때가 많은 코드가있다


        while(t){

            arr[cnt] = t%10;

            cnt++;

            t /= 10;

             

        }

인데 이코드는 while에 들어간 수를 한자리씩나눠서 배열에 저장하는 코드이다

원리는 입력한값 t를 10으로 나눈나머지를 배열에 넣고 t를 10으로나누는 걸 반복해서

자동으로 t가 0이 되었을때 while문을 자동으로 빠져나오도록 짜여진 코드인데 개인적으로 굉장히 많이 써먹었던 코드니까 팁으로 알아가는 것도 좋을 것 같다

Comments