'Problems/Level4'에 해당되는 글 7건

  1. 2020.04.22 JosephusProblem
  2. 2020.04.22 SpiralNumber
  3. 2020.04.22 KaprekarNumber
  4. 2020.04.22 Kaprekar's Operation
  5. 2020.04.22 Ant
  6. 2020.04.22 Palindrome
  7. 2020.04.22 SelfNumber
Problems/Level42020. 4. 22. 20:31

Josephus와 그의 동료들 N명(Josephus포함)이 식인종들에게 붙잡혔습니다.

이 식인종들은 포로들 중 한 명은 살려보내는 것이 전통입니다. 그 한 명을 선택하는 방법은 다음과 같습니다.

1. 포로들을 둥글게 세우고, 1번부터 N번까지 번호를 붙인다.
2. 1번부터 세기 시작하여 살아 있는 포로들 중 매번 K번째 위치에서 있는 포로를 처형한다.
3. 최후에 남은 한 명의 포로는 살려보낸다.

문제는 N명의 포로가 있고 매번 K번째 위치에 서 있는 포로를 잡아먹는다고 할 때,
최후에 살아 남을 수 있는 포로의 위치를 계산하는 것인데요.

13명의 포로들이 1번부터 13번 위치에 있을 때, 매번 3번째 위치에 있는 포로를 처형한다고 하면,
포로들은 다음의 순서대로 처형됩니다.

3, 6, 9, 12, 2, 7, 11, 4, 10, 5, 1, 8
따라서 13번째 위치에 서 있는 포로는 살 수 있습니다.

N과 K를 입력받아 선택되는 과정을 출력하고 살려보낼 사람이 누구인지 결정해야 합니다.

마지막 줄에 살려보낼 사람의 번호를 출력하세요. ( 2<= N,K <=1000 )


INPUT

200
8

OUTPUT

    8   16   24   32   40   48   56   64   72   80
   88   96  104  112  120  128  136  144  152  160
  168  176  184  192  200    9   18   27   36   45
   54   63   73   82   91  100  109  118  127  137
  146  155  164  173  182  191    1   11   21   31
   42   52   62   74   84   94  105  115  125  135
  147  157  167  178  188  198   10   22   34   46
   58   69   81   93  106  117  130  141  153  165
  177  189    2   14   28   41   55   68   83   97
  110  123  138  150  163  179  193    5   20   37
   51   67   85   99  114  131  145  161  175  194
    7   26   44   61   78   98  116  133  151  170
  186    4   25   47   66   87  107  126  148  169
  187   12   33   57   77  102  124  149  172  196
   19   49   75  101  129  156  181    6   38   70
   95  132  159  190   23   59   90  122  162  197
   35   76  113  154  195   39   86  134  174   17
   71  121  180   30   92  143   13   79  142   15
  103  171   53  140   43  139   50  166   89    3
  183  119  111  158  199   65   60  185  108
Live : 29

Posted by adhoc
Problems/Level42020. 4. 22. 20:29
정수형으로 N을 입력받아 N*N크기의 매트릭스(matrix)에 1부터 N^2 숫자를 나선형으로 출력하세요.

INPUT

10

OUTPUT

   1   36   35   34   33   32   31   30   29   28
   2   37   64   63   62   61   60   59   58   27
   3   38   65   84   83   82   81   80   57   26
   4   39   66   85   96   95   94   79   56   25
   5   40   67   86   97  100   93   78   55   24
   6   41   68   87   98   99   92   77   54   23
   7   42   69   88   89   90   91   76   53   22
   8   43   70   71   72   73   74   75   52   21
   9   44   45   46   47   48   49   50   51   20
  10   11   12   13   14   15   16   17   18   19
Posted by adhoc
Problems/Level42020. 4. 22. 20:28

297x297 = 88209 인데 297은 88 + 209 <자리수 분할> 로 나타 낼 수 있으며,
999x999 = 998001 이고 999 는 998 + 001<자리수 분할>로 나타낼 수 있습니다.

이렇게 숫자를 곱하여 나온 결과를 자리수를 잘라 더하면 원본 숫자가 나오게 되는데 이를

인도의 수학자 Ramachandra Kaprekar가 발견하여 그의 이름을 따 "Kaprekar 수"로 불립니다.

1부터 30000사이의 Kaprekar 수를 구하고 곱하고 더하는 과정을 출력하세요.

OUTPUT

1 -> 1 => 0 + 1 = 1
9 -> 81 => 8 + 1 = 9
45 -> 2025 => 20 + 25 = 45
55 -> 3025 => 30 + 25 = 55
99 -> 9801 => 98 + 1 = 99
297 -> 88209 => 88 + 209 = 297
703 -> 494209 => 494 + 209 = 703
999 -> 998001 => 998 + 1 = 999
2223 -> 4941729 => 494 + 1729 = 2223
2728 -> 7441984 => 744 + 1984 = 2728
4950 -> 24502500 => 2450 + 2500 = 4950
5050 -> 25502500 => 2550 + 2500 = 5050
7272 -> 52881984 => 5288 + 1984 = 7272
7777 -> 60481729 => 6048 + 1729 = 7777
9999 -> 99980001 => 9998 + 1 = 9999
17344 -> 300814336 => 3008 + 14336 = 17344
22222 -> 493817284 => 4938 + 17284 = 22222

Posted by adhoc
Problems/Level42020. 4. 22. 20:26

회생수(回生數)
100자리  →    4 9 5
1000자리 → 6 1 7 4
4 9 5  와  6 1 7 4 는 일종의 신비스러운 '회생숫자'입니다.
이 자연수는 인도 수학자인 D.R. Kaprekar 가 처음으로 연구한 후 커다란 주목을 불러 일으켰으며

미국의 권위 있는 "미국 수학 월간"에도 여러 차례 이 문제에 관해 논문을 발표하였습니다.

예) 입력수가 3861일때
  - 큰 순으로 적으면 8631, 작은 순으로 적으면 1368 두 수의 차를 구하면 8631-1368 = 7263
  - 결과값을 같은 방법으로 적용하면 7632-2367=5265,  다음은 3996, 6264, 4176, 6174
    그 어떤 4자리수로 해도 결국은 6174란 답은 항상 나옵니다.
    (1000부터 9998, 단 1111,2222,...8888 처럼 최대-최소=0 되는 수 제외)

※ Kaprekar 과정을 거치면 네자리는 6174 고정된 수가 나오고 세자리에서는 495가 있습니다.

4자리 정수를 입력 받아 6174가 나오는 과정을 출력하세요.

INPUT

1222

OUTPUT

1222 :
MAX : 2221, MIN : 1222
2221 - 1222 = 999
0999 :
MAX : 9990, MIN : 999
9990 - 999 = 8991
8991 :
MAX : 9981, MIN : 1899
9981 - 1899 = 8082
8082 :
MAX : 8820, MIN : 288
8820 - 288 = 8532
8532 :
MAX : 8532, MIN : 2358
8532 - 2358 = 6174
6174 :
END

Posted by adhoc
Problems/Level42020. 4. 22. 20:24

Ant

베르나르베르베르 저 '개미'라는 책에 나오는 문제입니다.

1에서 시작하여 바로 위의 수열을 참조해서 숫자의 개수를 표현하는 방식입니다.

1
11              // 1이 1개
12              // 1이 2개
1121            // 1이 1개 2가 1개
122111          // 1이 2개 2가 1개 1이 1개
112213
12221131
1123123111
12213111213113

10번째 줄까지 나오도록 구현해보세요.

OUTPUT

1
11
12
1121
122111
112213
12221131
1123123111
12213111213113
11221131132111311231

Posted by adhoc
Problems/Level42020. 4. 22. 20:23

컴퓨터 학자인 그루엔버거(F.Gruenverger)는 1984년에 미국 잡지 '사이언틱 아메리칸(Scientific American)' 에 실린
'컴퓨터 레크리에이션(Computer Recreations)'이라는 칼럼에서 제공한 알고리즘 이라고 합니다.

1. 숫자를 아무거나 고릅니다.
2. 그 수를 거꾸로 뒤집어요. (예를들어 13을 골랐다면 31)
   그 다음 뒤집은 수를 원래 수에 더합니다. 13+31
3. 두 수를 더한 결과가 팰린드롬이 아니라면 2번으로 돌아가서 동일한 과정을 다시한번 반복합니다.
   두 수를 더한 결과가 팰린드롬이라면 끝입니다.

- 팰린드롬(palindrome) - 회문자라고도 하며 앞으로 읽으나 뒤로 읽으나
   같은 내용이 되는 문자나 문장입니다. 예) 33, 121, 다시합시다, ...
- 흥미로운 것은 196은 팰린드롬인지 아닌지 여부가 밝혀지지 않았답니다.
   196입력하지 마시길...^^;

그루엔버거 알고리즘을 구현하는것이 이번 문제입니다.

INPUT

37

OUTPUT

before :         37
after  :         73
37 + 73 = 110
before :        110
after  :        011
110 + 11 = 121
before :        121
after  :        121
Result : 121

Posted by adhoc
Problems/Level42020. 4. 22. 20:20

넥슨 개발자용 입사지원 시험

어떤 자연수 n이 있을 때, d(n)을 n의 각 자릿수 숫자들과 n 자신을 더한 숫자라고 정의합니다.

예를 들어 d(91) = 9 + 1 + 91 = 101 이 때, n을 d(n)의 제네레이터(generator)라고 합시다.
위의 예에서 91은 101의 제네레이터입니다..

어떤 숫자들은 하나 이상의 제네레이터를 가지고 있는데, 101의 제네레이터는 91 뿐 아니라 100도 있습니다.
그런데 반대로, 제네레이터가 없는 숫자들도 있으며, 이런 숫자를 인도의 수학자 Kaprekar가
셀프 넘버(self-number)라 이름 붙였습니다.

예를 들어 1, 3, 5, 7, 9, 20, 31 은 셀프 넘버 들입니다.
1 이상이고 5000 보다 작은 모든 셀프 넘버들의 합을 구하세요.

(셀프 넘버들을 한줄에 15개씩 출력하고 마지막에 셀프 넘버들의 합을 출력하세요)

OUTPUT

   1    3    5    7    9   20   31   42   53   64   75   86   97  108  110
 121  132  143  154  165  176  187  198  209  211  222  233  244  255  266
 277  288  299  310  312  323  334  345  356  367  378  389  400  411  413
 424  435  446  457  468  479  490  501  512  514  525  536  547  558  569
 580  591  602  613  615  626  637  648  659  670  681  692  703  714  716
 727  738  749  760  771  782  793  804  815  817  828  839  850  861  872
 883  894  905  916  918  929  940  951  962  973  984  995 1006 1021 1032
1043 1054 1065 1076 1087 1098 1109 1111 1122 1133 1144 1155 1166 1177 1188
1199 1210 1212 1223 1234 1245 1256 1267 1278 1289 1300 1311 1313 1324 1335
1346 1357 1368 1379 1390 1401 1412 1414 1425 1436 1447 1458 1469 1480 1491
1502 1513 1515 1526 1537 1548 1559 1570 1581 1592 1603 1614 1616 1627 1638
1649 1660 1671 1682 1693 1704 1715 1717 1728 1739 1750 1761 1772 1783 1794
1805 1816 1818 1829 1840 1851 1862 1873 1884 1895 1906 1917 1919 1930 1941
1952 1963 1974 1985 1996 2007 2022 2033 2044 2055 2066 2077 2088 2099 2110
2112 2123 2134 2145 2156 2167 2178 2189 2200 2211 2213 2224 2235 2246 2257
2268 2279 2290 2301 2312 2314 2325 2336 2347 2358 2369 2380 2391 2402 2413
2415 2426 2437 2448 2459 2470 2481 2492 2503 2514 2516 2527 2538 2549 2560
2571 2582 2593 2604 2615 2617 2628 2639 2650 2661 2672 2683 2694 2705 2716
2718 2729 2740 2751 2762 2773 2784 2795 2806 2817 2819 2830 2841 2852 2863
2874 2885 2896 2907 2918 2920 2931 2942 2953 2964 2975 2986 2997 3008 3023
3034 3045 3056 3067 3078 3089 3100 3111 3113 3124 3135 3146 3157 3168 3179
3190 3201 3212 3214 3225 3236 3247 3258 3269 3280 3291 3302 3313 3315 3326
3337 3348 3359 3370 3381 3392 3403 3414 3416 3427 3438 3449 3460 3471 3482
3493 3504 3515 3517 3528 3539 3550 3561 3572 3583 3594 3605 3616 3618 3629
3640 3651 3662 3673 3684 3695 3706 3717 3719 3730 3741 3752 3763 3774 3785
3796 3807 3818 3820 3831 3842 3853 3864 3875 3886 3897 3908 3919 3921 3932
3943 3954 3965 3976 3987 3998 4009 4024 4035 4046 4057 4068 4079 4090 4101
4112 4114 4125 4136 4147 4158 4169 4180 4191 4202 4213 4215 4226 4237 4248
4259 4270 4281 4292 4303 4314 4316 4327 4338 4349 4360 4371 4382 4393 4404
4415 4417 4428 4439 4450 4461 4472 4483 4494 4505 4516 4518 4529 4540 4551
4562 4573 4584 4595 4606 4617 4619 4630 4641 4652 4663 4674 4685 4696 4707
4718 4720 4731 4742 4753 4764 4775 4786 4797 4808 4819 4821 4832 4843 4854
4865 4876 4887 4898 4909 4920 4922 4933 4944 4955 4966 4977 4988 4999
Result : 1227365


Posted by adhoc