Cody

# Problem 1084. Square Digits Number Chain Terminal Value (Inspired by Project Euler Problem 92)

Solution 173244

Submitted on 5 Dec 2012 by Paul Larson
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
%% assert(digits_squared_chain(649) == 1)

``` y = 133 y = 19 y = 82 y = 68 y = 100 y = 1 ```

2   Pass
%% assert(digits_squared_chain(79) == 1)

``` y = 130 y = 10 y = 1 ```

3   Pass
%% assert(digits_squared_chain(608) == 1)

``` y = 100 y = 1 ```

4   Pass
%% assert(digits_squared_chain(487) == 1)

``` y = 129 y = 86 y = 100 y = 1 ```

5   Pass
%% assert(digits_squared_chain(739) == 1)

``` y = 139 y = 91 y = 82 y = 68 y = 100 y = 1 ```

6   Pass
%% assert(digits_squared_chain(565) == 1)

``` y = 86 y = 100 y = 1 ```

7   Pass
%% assert(digits_squared_chain(68) == 1)

``` y = 100 y = 1 ```

8   Pass
%% assert(digits_squared_chain(383) == 1)

``` y = 82 y = 68 y = 100 y = 1 ```

9   Pass
%% assert(digits_squared_chain(379) == 1)

``` y = 139 y = 91 y = 82 y = 68 y = 100 y = 1 ```

10   Pass
%% assert(digits_squared_chain(203) == 1)

``` y = 13 y = 10 y = 1 ```

11   Pass
%% assert(digits_squared_chain(632) == 1)

``` y = 49 y = 97 y = 130 y = 10 y = 1 ```

12   Pass
%% assert(digits_squared_chain(391) == 1)

``` y = 91 y = 82 y = 68 y = 100 y = 1 ```

13   Pass
%% assert(digits_squared_chain(863) == 1)

``` y = 109 y = 82 y = 68 y = 100 y = 1 ```

14   Pass
%% assert(digits_squared_chain(13) == 1)

``` y = 10 y = 1 ```

15   Pass
%% assert(digits_squared_chain(100) == 1)

``` y = 1 ```

16   Pass
%% assert(digits_squared_chain(236) == 1)

``` y = 49 y = 97 y = 130 y = 10 y = 1 ```

17   Pass
%% assert(digits_squared_chain(293) == 1)

``` y = 94 y = 97 y = 130 y = 10 y = 1 ```

18   Pass
%% assert(digits_squared_chain(230) == 1)

``` y = 13 y = 10 y = 1 ```

19   Pass
%% assert(digits_squared_chain(31) == 1)

``` y = 10 y = 1 ```

20   Pass
%% assert(digits_squared_chain(806) == 1)

``` y = 100 y = 1 ```

21   Pass
%% assert(digits_squared_chain(623) == 1)

``` y = 49 y = 97 y = 130 y = 10 y = 1 ```

22   Pass
%% assert(digits_squared_chain(7) == 1)

``` y = 49 y = 97 y = 130 y = 10 y = 1 ```

23   Pass
%% assert(digits_squared_chain(13) == 1)

``` y = 10 y = 1 ```

24   Pass
%% assert(digits_squared_chain(836) == 1)

``` y = 109 y = 82 y = 68 y = 100 y = 1 ```

25   Pass
%% assert(digits_squared_chain(954) == 89)

``` y = 122 y = 9 y = 81 y = 65 y = 61 y = 37 y = 58 y = 89 ```

26   Pass
%% assert(digits_squared_chain(567) == 89)

``` y = 110 y = 2 y = 4 y = 16 y = 37 y = 58 y = 89 ```

27   Pass
%% assert(digits_squared_chain(388) == 89)

``` y = 137 y = 59 y = 106 y = 37 y = 58 y = 89 ```

28   Pass
%% assert(digits_squared_chain(789) == 89)

``` y = 194 y = 98 y = 145 y = 42 y = 20 y = 4 y = 16 y = 37 y = 58 y = 89 ```

29   Pass
%% assert(digits_squared_chain(246) == 89)

``` y = 56 y = 61 y = 37 y = 58 y = 89 ```

30   Pass
%% assert(digits_squared_chain(787) == 89)

``` y = 162 y = 41 y = 17 y = 50 y = 25 y = 29 y = 85 y = 89 ```

31   Pass
%% assert(digits_squared_chain(311) == 89)

``` y = 11 y = 2 y = 4 y = 16 y = 37 y = 58 y = 89 ```

32   Pass
%% assert(digits_squared_chain(856) == 89)

``` y = 125 y = 30 y = 9 y = 81 y = 65 y = 61 y = 37 y = 58 y = 89 ```

33   Pass
%% assert(digits_squared_chain(143) == 89)

``` y = 26 y = 40 y = 16 y = 37 y = 58 y = 89 ```

34   Pass
%% assert(digits_squared_chain(873) == 89)

``` y = 122 y = 9 y = 81 y = 65 y = 61 y = 37 y = 58 y = 89 ```

35   Pass
%% assert(digits_squared_chain(215) == 89)

``` y = 30 y = 9 y = 81 y = 65 y = 61 y = 37 y = 58 y = 89 ```

36   Pass
%% assert(digits_squared_chain(995) == 89)

``` y = 187 y = 114 y = 18 y = 65 y = 61 y = 37 y = 58 y = 89 ```

37   Pass
%% assert(digits_squared_chain(455) == 89)

``` y = 66 y = 72 y = 53 y = 34 y = 25 y = 29 y = 85 y = 89 ```

38   Pass
%% assert(digits_squared_chain(948) == 89)

``` y = 161 y = 38 y = 73 y = 58 y = 89 ```

39   Pass
%% assert(digits_squared_chain(875) == 89)

``` y = 138 y = 74 y = 65 y = 61 y = 37 y = 58 y = 89 ```

40   Pass
%% assert(digits_squared_chain(788) == 89)

``` y = 177 y = 99 y = 162 y = 41 y = 17 y = 50 y = 25 y = 29 y = 85 y = 89 ```

41   Pass
%% assert(digits_squared_chain(722) == 89)

``` y = 57 y = 74 y = 65 y = 61 y = 37 y = 58 y = 89 ```

42   Pass
%% assert(digits_squared_chain(250) == 89)

``` y = 29 y = 85 y = 89 ```

43   Pass
%% assert(digits_squared_chain(227) == 89)

``` y = 57 y = 74 y = 65 y = 61 y = 37 y = 58 y = 89 ```

44   Pass
%% assert(digits_squared_chain(640) == 89)

``` y = 52 y = 29 y = 85 y = 89 ```

45   Pass
%% assert(digits_squared_chain(835) == 89)

``` y = 98 y = 145 y = 42 y = 20 y = 4 y = 16 y = 37 y = 58 y = 89 ```

46   Pass
%% assert(digits_squared_chain(965) == 89)

``` y = 142 y = 21 y = 5 y = 25 y = 29 y = 85 y = 89 ```

47   Pass
%% assert(digits_squared_chain(726) == 89)

``` y = 89 ```

48   Pass
%% assert(digits_squared_chain(689) == 89)

``` y = 181 y = 66 y = 72 y = 53 y = 34 y = 25 y = 29 y = 85 y = 89 ```