結果

問題 No.3048 Order and Harmony
ユーザー betrue12betrue12
提出日時 2019-04-02 00:19:36
言語 Ruby
(3.3.0)
結果
AC  
実行時間 258 ms / 2,000 ms
コード長 24,357 bytes
コンパイル時間 40 ms
コンパイル使用メモリ 7,936 KB
実行使用メモリ 12,544 KB
最終ジャッジ日時 2024-11-27 06:56:09
合計ジャッジ時間 9,914 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 88 ms
12,288 KB
testcase_01 AC 89 ms
12,288 KB
testcase_02 AC 99 ms
12,416 KB
testcase_03 AC 153 ms
12,416 KB
testcase_04 AC 85 ms
12,288 KB
testcase_05 AC 84 ms
12,416 KB
testcase_06 AC 92 ms
12,544 KB
testcase_07 AC 85 ms
12,544 KB
testcase_08 AC 93 ms
12,160 KB
testcase_09 AC 86 ms
12,160 KB
testcase_10 AC 93 ms
12,288 KB
testcase_11 AC 87 ms
12,032 KB
testcase_12 AC 84 ms
12,160 KB
testcase_13 AC 84 ms
12,416 KB
testcase_14 AC 84 ms
12,416 KB
testcase_15 AC 97 ms
12,160 KB
testcase_16 AC 83 ms
12,288 KB
testcase_17 AC 84 ms
12,416 KB
testcase_18 AC 85 ms
12,288 KB
testcase_19 AC 98 ms
12,416 KB
testcase_20 AC 95 ms
12,288 KB
testcase_21 AC 96 ms
12,288 KB
testcase_22 AC 90 ms
12,416 KB
testcase_23 AC 85 ms
12,416 KB
testcase_24 AC 85 ms
12,288 KB
testcase_25 AC 131 ms
12,416 KB
testcase_26 AC 161 ms
12,416 KB
testcase_27 AC 167 ms
12,160 KB
testcase_28 AC 158 ms
12,288 KB
testcase_29 AC 85 ms
12,288 KB
testcase_30 AC 131 ms
12,288 KB
testcase_31 AC 85 ms
12,416 KB
testcase_32 AC 148 ms
12,416 KB
testcase_33 AC 86 ms
12,416 KB
testcase_34 AC 101 ms
12,288 KB
testcase_35 AC 85 ms
12,288 KB
testcase_36 AC 246 ms
12,416 KB
testcase_37 AC 199 ms
12,288 KB
testcase_38 AC 227 ms
12,544 KB
testcase_39 AC 191 ms
12,160 KB
testcase_40 AC 141 ms
12,160 KB
testcase_41 AC 170 ms
12,288 KB
testcase_42 AC 215 ms
12,160 KB
testcase_43 AC 86 ms
12,416 KB
testcase_44 AC 187 ms
12,288 KB
testcase_45 AC 257 ms
12,288 KB
testcase_46 AC 250 ms
12,416 KB
testcase_47 AC 120 ms
12,288 KB
testcase_48 AC 164 ms
12,416 KB
testcase_49 AC 87 ms
12,416 KB
testcase_50 AC 144 ms
12,288 KB
testcase_51 AC 85 ms
12,416 KB
testcase_52 AC 85 ms
12,416 KB
testcase_53 AC 167 ms
12,544 KB
testcase_54 AC 85 ms
12,160 KB
testcase_55 AC 92 ms
12,288 KB
testcase_56 AC 150 ms
12,288 KB
testcase_57 AC 86 ms
12,416 KB
testcase_58 AC 85 ms
12,288 KB
testcase_59 AC 86 ms
12,288 KB
testcase_60 AC 161 ms
12,416 KB
testcase_61 AC 190 ms
12,288 KB
testcase_62 AC 167 ms
12,416 KB
testcase_63 AC 85 ms
12,288 KB
testcase_64 AC 258 ms
12,288 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

MEMO = {
0 => 1,
1000000 => 641102369,
2000000 => 578095319,
3000000 => 5832229,
4000000 => 259081142,
5000000 => 974067448,
6000000 => 316220877,
7000000 => 690120224,
8000000 => 251368199,
9000000 => 980250487,
10000000 => 682498929,
11000000 => 134623568,
12000000 => 95936601,
13000000 => 933097914,
14000000 => 167332441,
15000000 => 598816162,
16000000 => 336060741,
17000000 => 248744620,
18000000 => 626497524,
19000000 => 288843364,
20000000 => 491101308,
21000000 => 245341950,
22000000 => 565768255,
23000000 => 246899319,
24000000 => 968999,
25000000 => 586350670,
26000000 => 638587686,
27000000 => 881746146,
28000000 => 19426633,
29000000 => 850500036,
30000000 => 76479948,
31000000 => 268124147,
32000000 => 842267748,
33000000 => 886294336,
34000000 => 485348706,
35000000 => 463847391,
36000000 => 544075857,
37000000 => 898187927,
38000000 => 798967520,
39000000 => 82926604,
40000000 => 723816384,
41000000 => 156530778,
42000000 => 721996174,
43000000 => 299085602,
44000000 => 323604647,
45000000 => 172827403,
46000000 => 398699886,
47000000 => 530389102,
48000000 => 294587621,
49000000 => 813805606,
50000000 => 67347853,
51000000 => 497478507,
52000000 => 196447201,
53000000 => 722054885,
54000000 => 228338256,
55000000 => 407719831,
56000000 => 762479457,
57000000 => 746536789,
58000000 => 811667359,
59000000 => 778773518,
60000000 => 27368307,
61000000 => 438371670,
62000000 => 59469516,
63000000 => 5974669,
64000000 => 766196482,
65000000 => 606322308,
66000000 => 86609485,
67000000 => 889750731,
68000000 => 340941507,
69000000 => 371263376,
70000000 => 625544428,
71000000 => 788878910,
72000000 => 808412394,
73000000 => 996952918,
74000000 => 585237443,
75000000 => 1669644,
76000000 => 361786913,
77000000 => 480748381,
78000000 => 595143852,
79000000 => 837229828,
80000000 => 199888908,
81000000 => 526807168,
82000000 => 579691190,
83000000 => 145404005,
84000000 => 459188207,
85000000 => 534491822,
86000000 => 439729802,
87000000 => 840398449,
88000000 => 899297830,
89000000 => 235861787,
90000000 => 888050723,
91000000 => 656116726,
92000000 => 736550105,
93000000 => 440902696,
94000000 => 85990869,
95000000 => 884343068,
96000000 => 56305184,
97000000 => 973478770,
98000000 => 168891766,
99000000 => 804805577,
100000000 => 927880474,
101000000 => 876297919,
102000000 => 934814019,
103000000 => 676405347,
104000000 => 567277637,
105000000 => 112249297,
106000000 => 44930135,
107000000 => 39417871,
108000000 => 47401357,
109000000 => 108819476,
110000000 => 281863274,
111000000 => 60168088,
112000000 => 692636218,
113000000 => 432775082,
114000000 => 14235602,
115000000 => 770511792,
116000000 => 400295761,
117000000 => 697066277,
118000000 => 421835306,
119000000 => 220108638,
120000000 => 661224977,
121000000 => 261799937,
122000000 => 168203998,
123000000 => 802214249,
124000000 => 544064410,
125000000 => 935080803,
126000000 => 583967898,
127000000 => 211768084,
128000000 => 751231582,
129000000 => 972424306,
130000000 => 623534362,
131000000 => 335160196,
132000000 => 243276029,
133000000 => 554749550,
134000000 => 60050552,
135000000 => 797848181,
136000000 => 395891998,
137000000 => 172428290,
138000000 => 159554990,
139000000 => 887420150,
140000000 => 970055531,
141000000 => 250388809,
142000000 => 487998999,
143000000 => 856259313,
144000000 => 82104855,
145000000 => 232253360,
146000000 => 513365505,
147000000 => 244109365,
148000000 => 1559745,
149000000 => 695345956,
150000000 => 261384175,
151000000 => 849009131,
152000000 => 323214113,
153000000 => 747664143,
154000000 => 444090941,
155000000 => 659224434,
156000000 => 80729842,
157000000 => 570033864,
158000000 => 664989237,
159000000 => 827348878,
160000000 => 195888993,
161000000 => 576798521,
162000000 => 457882808,
163000000 => 731551699,
164000000 => 212938473,
165000000 => 509096183,
166000000 => 827544702,
167000000 => 678320208,
168000000 => 677711203,
169000000 => 289752035,
170000000 => 66404266,
171000000 => 555972231,
172000000 => 195290384,
173000000 => 97136305,
174000000 => 349551356,
175000000 => 785113347,
176000000 => 83489485,
177000000 => 66247239,
178000000 => 52167191,
179000000 => 307390891,
180000000 => 547665832,
181000000 => 143066173,
182000000 => 350016754,
183000000 => 917404120,
184000000 => 296269301,
185000000 => 996122673,
186000000 => 23015220,
187000000 => 602139210,
188000000 => 748566338,
189000000 => 187348575,
190000000 => 109838563,
191000000 => 574053420,
192000000 => 105574531,
193000000 => 304173654,
194000000 => 542432219,
195000000 => 34538816,
196000000 => 325636655,
197000000 => 437843114,
198000000 => 630621321,
199000000 => 26853683,
200000000 => 933245637,
201000000 => 616368450,
202000000 => 238971581,
203000000 => 511371690,
204000000 => 557301633,
205000000 => 911398531,
206000000 => 848952161,
207000000 => 958992544,
208000000 => 925152039,
209000000 => 914456118,
210000000 => 724691727,
211000000 => 636817583,
212000000 => 238087006,
213000000 => 946237212,
214000000 => 910291942,
215000000 => 114985663,
216000000 => 492237273,
217000000 => 450387329,
218000000 => 834860913,
219000000 => 763017204,
220000000 => 368925948,
221000000 => 475812562,
222000000 => 740594930,
223000000 => 45060610,
224000000 => 806047532,
225000000 => 464456846,
226000000 => 172115341,
227000000 => 75307702,
228000000 => 116261993,
229000000 => 562519302,
230000000 => 268838846,
231000000 => 173784895,
232000000 => 243624360,
233000000 => 61570384,
234000000 => 481661251,
235000000 => 938269070,
236000000 => 95182730,
237000000 => 91068149,
238000000 => 115435332,
239000000 => 495022305,
240000000 => 136026497,
241000000 => 506496856,
242000000 => 710729672,
243000000 => 113570024,
244000000 => 366384665,
245000000 => 564758715,
246000000 => 270239666,
247000000 => 277118392,
248000000 => 79874094,
249000000 => 702807165,
250000000 => 112390913,
251000000 => 730341625,
252000000 => 103056890,
253000000 => 677948390,
254000000 => 339464594,
255000000 => 167240465,
256000000 => 108312174,
257000000 => 839079953,
258000000 => 479334442,
259000000 => 271788964,
260000000 => 135498044,
261000000 => 277717575,
262000000 => 591048681,
263000000 => 811637561,
264000000 => 353339603,
265000000 => 889410460,
266000000 => 839849206,
267000000 => 192345193,
268000000 => 736265527,
269000000 => 316439118,
270000000 => 217544623,
271000000 => 788132977,
272000000 => 618898635,
273000000 => 183011467,
274000000 => 380858207,
275000000 => 996097969,
276000000 => 898554793,
277000000 => 335353644,
278000000 => 54062950,
279000000 => 611251733,
280000000 => 419363534,
281000000 => 965429853,
282000000 => 160398980,
283000000 => 151319402,
284000000 => 990918946,
285000000 => 607730875,
286000000 => 450718279,
287000000 => 173539388,
288000000 => 648991369,
289000000 => 970937898,
290000000 => 500780548,
291000000 => 780122909,
292000000 => 39052406,
293000000 => 276894233,
294000000 => 460373282,
295000000 => 651081062,
296000000 => 461415770,
297000000 => 358700839,
298000000 => 643638805,
299000000 => 560006119,
300000000 => 668123525,
301000000 => 686692315,
302000000 => 673464765,
303000000 => 957633609,
304000000 => 199866123,
305000000 => 563432246,
306000000 => 841799766,
307000000 => 385330357,
308000000 => 504962686,
309000000 => 954061253,
310000000 => 128487469,
311000000 => 685707545,
312000000 => 299172297,
313000000 => 717975101,
314000000 => 577786541,
315000000 => 318951960,
316000000 => 773206631,
317000000 => 306832604,
318000000 => 204355779,
319000000 => 573592106,
320000000 => 30977140,
321000000 => 450398100,
322000000 => 363172638,
323000000 => 258379324,
324000000 => 472935553,
325000000 => 93940075,
326000000 => 587220627,
327000000 => 776264326,
328000000 => 793270300,
329000000 => 291733496,
330000000 => 522049725,
331000000 => 579995261,
332000000 => 335416359,
333000000 => 142946099,
334000000 => 472012302,
335000000 => 559947225,
336000000 => 332139472,
337000000 => 499377092,
338000000 => 464599136,
339000000 => 164752359,
340000000 => 309058615,
341000000 => 86117128,
342000000 => 580204973,
343000000 => 563781682,
344000000 => 954840109,
345000000 => 624577416,
346000000 => 895609896,
347000000 => 888287558,
348000000 => 836813268,
349000000 => 926036911,
350000000 => 386027524,
351000000 => 184419613,
352000000 => 724205533,
353000000 => 403351886,
354000000 => 715247054,
355000000 => 716986954,
356000000 => 830567832,
357000000 => 383388563,
358000000 => 68409439,
359000000 => 6734065,
360000000 => 189239124,
361000000 => 68322490,
362000000 => 943653305,
363000000 => 405755338,
364000000 => 811056092,
365000000 => 179518046,
366000000 => 825132993,
367000000 => 343807435,
368000000 => 985084650,
369000000 => 868553027,
370000000 => 148528617,
371000000 => 160684257,
372000000 => 882148737,
373000000 => 591915968,
374000000 => 701445829,
375000000 => 529726489,
376000000 => 302177126,
377000000 => 974886682,
378000000 => 241107368,
379000000 => 798830099,
380000000 => 940567523,
381000000 => 11633075,
382000000 => 325334066,
383000000 => 346091869,
384000000 => 115312728,
385000000 => 473718967,
386000000 => 218129285,
387000000 => 878471898,
388000000 => 180002392,
389000000 => 699739374,
390000000 => 917084264,
391000000 => 856859395,
392000000 => 435327356,
393000000 => 808651347,
394000000 => 421623838,
395000000 => 105419548,
396000000 => 59883031,
397000000 => 322487421,
398000000 => 79716267,
399000000 => 715317963,
400000000 => 429277690,
401000000 => 398078032,
402000000 => 316486674,
403000000 => 384843585,
404000000 => 940338439,
405000000 => 937409008,
406000000 => 940524812,
407000000 => 947549662,
408000000 => 833550543,
409000000 => 593524514,
410000000 => 996164327,
411000000 => 987314628,
412000000 => 697611981,
413000000 => 636177449,
414000000 => 274192146,
415000000 => 418537348,
416000000 => 925347821,
417000000 => 952831975,
418000000 => 893732627,
419000000 => 1277567,
420000000 => 358655417,
421000000 => 141866945,
422000000 => 581830879,
423000000 => 987597705,
424000000 => 347046911,
425000000 => 775305697,
426000000 => 125354499,
427000000 => 951540811,
428000000 => 247662371,
429000000 => 343043237,
430000000 => 568392357,
431000000 => 997474832,
432000000 => 209244402,
433000000 => 380480118,
434000000 => 149586983,
435000000 => 392838702,
436000000 => 309134554,
437000000 => 990779998,
438000000 => 263053337,
439000000 => 325362513,
440000000 => 780072518,
441000000 => 551028176,
442000000 => 990826116,
443000000 => 989944961,
444000000 => 155569943,
445000000 => 596737944,
446000000 => 711553356,
447000000 => 268844715,
448000000 => 451373308,
449000000 => 379404150,
450000000 => 462639908,
451000000 => 961812918,
452000000 => 654611901,
453000000 => 382776490,
454000000 => 41815820,
455000000 => 843321396,
456000000 => 675258797,
457000000 => 845583555,
458000000 => 934281721,
459000000 => 741114145,
460000000 => 275105629,
461000000 => 666247477,
462000000 => 325912072,
463000000 => 526131620,
464000000 => 252551589,
465000000 => 432030917,
466000000 => 554917439,
467000000 => 818036959,
468000000 => 754363835,
469000000 => 795190182,
470000000 => 909210595,
471000000 => 278704903,
472000000 => 719566487,
473000000 => 628514947,
474000000 => 424989675,
475000000 => 321685608,
476000000 => 50590510,
477000000 => 832069712,
478000000 => 198768464,
479000000 => 702004730,
480000000 => 99199382,
481000000 => 707469729,
482000000 => 747407118,
483000000 => 302020341,
484000000 => 497196934,
485000000 => 5003231,
486000000 => 726997875,
487000000 => 382617671,
488000000 => 296229203,
489000000 => 183888367,
490000000 => 703397904,
491000000 => 552133875,
492000000 => 732868367,
493000000 => 350095207,
494000000 => 26031303,
495000000 => 863250534,
496000000 => 216665960,
497000000 => 561745549,
498000000 => 352946234,
499000000 => 784139777,
500000000 => 733333339,
501000000 => 503105966,
502000000 => 459878625,
503000000 => 803187381,
504000000 => 16634739,
505000000 => 180898306,
506000000 => 68718097,
507000000 => 985594252,
508000000 => 404206040,
509000000 => 749724532,
510000000 => 97830135,
511000000 => 611751357,
512000000 => 31131935,
513000000 => 662741752,
514000000 => 864326453,
515000000 => 864869025,
516000000 => 167831173,
517000000 => 559214642,
518000000 => 718498895,
519000000 => 91352335,
520000000 => 608823837,
521000000 => 473379392,
522000000 => 385388084,
523000000 => 152267158,
524000000 => 681756977,
525000000 => 46819124,
526000000 => 313132653,
527000000 => 56547945,
528000000 => 442795120,
529000000 => 796616594,
530000000 => 256141983,
531000000 => 152028387,
532000000 => 636578562,
533000000 => 385377759,
534000000 => 553033642,
535000000 => 491415383,
536000000 => 919273670,
537000000 => 996049638,
538000000 => 326686486,
539000000 => 160150665,
540000000 => 141827977,
541000000 => 540818053,
542000000 => 693305776,
543000000 => 593938674,
544000000 => 186576440,
545000000 => 688809790,
546000000 => 565456578,
547000000 => 749296077,
548000000 => 519397500,
549000000 => 551096742,
550000000 => 696628828,
551000000 => 775025061,
552000000 => 370732451,
553000000 => 164246193,
554000000 => 915265013,
555000000 => 457469634,
556000000 => 923043932,
557000000 => 912368644,
558000000 => 777901604,
559000000 => 464118005,
560000000 => 637939935,
561000000 => 956856710,
562000000 => 490676632,
563000000 => 453019482,
564000000 => 462528877,
565000000 => 502297454,
566000000 => 798895521,
567000000 => 100498586,
568000000 => 699767918,
569000000 => 849974789,
570000000 => 811575797,
571000000 => 438952959,
572000000 => 606870929,
573000000 => 907720182,
574000000 => 179111720,
575000000 => 48053248,
576000000 => 508038818,
577000000 => 811944661,
578000000 => 752550134,
579000000 => 401382061,
580000000 => 848924691,
581000000 => 764368449,
582000000 => 34629406,
583000000 => 529840945,
584000000 => 435904287,
585000000 => 26011548,
586000000 => 208184231,
587000000 => 446477394,
588000000 => 206330671,
589000000 => 366033520,
590000000 => 131772368,
591000000 => 185646898,
592000000 => 648711554,
593000000 => 472759660,
594000000 => 523696723,
595000000 => 271198437,
596000000 => 25058942,
597000000 => 859369491,
598000000 => 817928963,
599000000 => 330711333,
600000000 => 724464507,
601000000 => 437605233,
602000000 => 701453022,
603000000 => 626663115,
604000000 => 281230685,
605000000 => 510650790,
606000000 => 596949867,
607000000 => 295726547,
608000000 => 303076380,
609000000 => 465070856,
610000000 => 272814771,
611000000 => 538771609,
612000000 => 48824684,
613000000 => 951279549,
614000000 => 939889684,
615000000 => 564188856,
616000000 => 48527183,
617000000 => 201307702,
618000000 => 484458461,
619000000 => 861754542,
620000000 => 326159309,
621000000 => 181594759,
622000000 => 668422905,
623000000 => 286273596,
624000000 => 965656187,
625000000 => 44135644,
626000000 => 359960756,
627000000 => 936229527,
628000000 => 407934361,
629000000 => 267193060,
630000000 => 456152084,
631000000 => 459116722,
632000000 => 124804049,
633000000 => 262322489,
634000000 => 920251227,
635000000 => 816929577,
636000000 => 483924582,
637000000 => 151834896,
638000000 => 167087470,
639000000 => 490222511,
640000000 => 903466878,
641000000 => 361583925,
642000000 => 368114731,
643000000 => 339383292,
644000000 => 388728584,
645000000 => 218107212,
646000000 => 249153339,
647000000 => 909458706,
648000000 => 322908524,
649000000 => 202649964,
650000000 => 92255682,
651000000 => 573074791,
652000000 => 15570863,
653000000 => 94331513,
654000000 => 744158074,
655000000 => 196345098,
656000000 => 334326205,
657000000 => 9416035,
658000000 => 98349682,
659000000 => 882121662,
660000000 => 769795511,
661000000 => 231988936,
662000000 => 888146074,
663000000 => 137603545,
664000000 => 582627184,
665000000 => 407518072,
666000000 => 919419361,
667000000 => 909433461,
668000000 => 986708498,
669000000 => 310317874,
670000000 => 373745190,
671000000 => 263645931,
672000000 => 256853930,
673000000 => 876379959,
674000000 => 702823274,
675000000 => 147050765,
676000000 => 308186532,
677000000 => 175504139,
678000000 => 180350107,
679000000 => 797736554,
680000000 => 606241871,
681000000 => 384547635,
682000000 => 273712630,
683000000 => 586444655,
684000000 => 682189174,
685000000 => 666493603,
686000000 => 946867127,
687000000 => 819114541,
688000000 => 502371023,
689000000 => 261970285,
690000000 => 825871994,
691000000 => 126925175,
692000000 => 701506133,
693000000 => 314738056,
694000000 => 341779962,
695000000 => 561011609,
696000000 => 815463367,
697000000 => 46765164,
698000000 => 49187570,
699000000 => 188054995,
700000000 => 957939114,
701000000 => 64814326,
702000000 => 933376898,
703000000 => 329837066,
704000000 => 338121343,
705000000 => 765215899,
706000000 => 869630152,
707000000 => 978119194,
708000000 => 632627667,
709000000 => 975266085,
710000000 => 435887178,
711000000 => 282092463,
712000000 => 129621197,
713000000 => 758245605,
714000000 => 827722926,
715000000 => 201339230,
716000000 => 918513230,
717000000 => 322096036,
718000000 => 547838438,
719000000 => 985546115,
720000000 => 852304035,
721000000 => 593090119,
722000000 => 689189630,
723000000 => 555842733,
724000000 => 567033437,
725000000 => 469928208,
726000000 => 212842957,
727000000 => 117842065,
728000000 => 404149413,
729000000 => 155133422,
730000000 => 663307737,
731000000 => 208761293,
732000000 => 206282795,
733000000 => 717946122,
734000000 => 488906585,
735000000 => 414236650,
736000000 => 280700600,
737000000 => 962670136,
738000000 => 534279149,
739000000 => 214569244,
740000000 => 375297772,
741000000 => 811053196,
742000000 => 922377372,
743000000 => 289594327,
744000000 => 219932130,
745000000 => 211487466,
746000000 => 701050258,
747000000 => 398782410,
748000000 => 863002719,
749000000 => 27236531,
750000000 => 217598709,
751000000 => 375472836,
752000000 => 810551911,
753000000 => 178598958,
754000000 => 247844667,
755000000 => 676526196,
756000000 => 812283640,
757000000 => 863066876,
758000000 => 857241854,
759000000 => 113917835,
760000000 => 624148346,
761000000 => 726089763,
762000000 => 564827277,
763000000 => 826300950,
764000000 => 478982047,
765000000 => 439411911,
766000000 => 454039189,
767000000 => 633292726,
768000000 => 48562889,
769000000 => 802100365,
770000000 => 671734977,
771000000 => 945204804,
772000000 => 508831870,
773000000 => 398781902,
774000000 => 897162044,
775000000 => 644050694,
776000000 => 892168027,
777000000 => 828883117,
778000000 => 277714559,
779000000 => 713448377,
780000000 => 624500515,
781000000 => 590098114,
782000000 => 808691930,
783000000 => 514359662,
784000000 => 895205045,
785000000 => 715264908,
786000000 => 628829100,
787000000 => 484492064,
788000000 => 919717789,
789000000 => 513196123,
790000000 => 748510389,
791000000 => 403652653,
792000000 => 574455974,
793000000 => 77123823,
794000000 => 172096141,
795000000 => 819801784,
796000000 => 581418893,
797000000 => 15655126,
798000000 => 15391652,
799000000 => 875641535,
800000000 => 203191898,
801000000 => 264582598,
802000000 => 880691101,
803000000 => 907800444,
804000000 => 986598821,
805000000 => 340030191,
806000000 => 264688936,
807000000 => 369832433,
808000000 => 785804644,
809000000 => 842065079,
810000000 => 423951674,
811000000 => 663560047,
812000000 => 696623384,
813000000 => 496709826,
814000000 => 161960209,
815000000 => 331910086,
816000000 => 541120825,
817000000 => 951524114,
818000000 => 841656666,
819000000 => 162683802,
820000000 => 629786193,
821000000 => 190395535,
822000000 => 269571439,
823000000 => 832671304,
824000000 => 76770272,
825000000 => 341080135,
826000000 => 421943723,
827000000 => 494210290,
828000000 => 751040886,
829000000 => 317076664,
830000000 => 672850561,
831000000 => 72482816,
832000000 => 493689107,
833000000 => 135625240,
834000000 => 100228913,
835000000 => 684748812,
836000000 => 639655136,
837000000 => 906233141,
838000000 => 929893103,
839000000 => 277813439,
840000000 => 814362881,
841000000 => 562608724,
842000000 => 406024012,
843000000 => 885537778,
844000000 => 10065330,
845000000 => 60625018,
846000000 => 983737173,
847000000 => 60517502,
848000000 => 551060742,
849000000 => 804930491,
850000000 => 823845496,
851000000 => 727416538,
852000000 => 946421040,
853000000 => 678171399,
854000000 => 842203531,
855000000 => 175638827,
856000000 => 894247956,
857000000 => 538609927,
858000000 => 885362182,
859000000 => 946464959,
860000000 => 116667533,
861000000 => 749816133,
862000000 => 241427979,
863000000 => 871117927,
864000000 => 281804989,
865000000 => 163928347,
866000000 => 563796647,
867000000 => 640266394,
868000000 => 774625892,
869000000 => 59342705,
870000000 => 256473217,
871000000 => 674115061,
872000000 => 918860977,
873000000 => 322633051,
874000000 => 753513874,
875000000 => 393556719,
876000000 => 304644842,
877000000 => 767372800,
878000000 => 161362528,
879000000 => 754787150,
880000000 => 627655552,
881000000 => 677395736,
882000000 => 799289297,
883000000 => 846650652,
884000000 => 816701166,
885000000 => 687265514,
886000000 => 787113234,
887000000 => 358757251,
888000000 => 701220427,
889000000 => 607715125,
890000000 => 245795606,
891000000 => 600624983,
892000000 => 10475577,
893000000 => 728620948,
894000000 => 759404319,
895000000 => 36292292,
896000000 => 491466901,
897000000 => 22556579,
898000000 => 114495791,
899000000 => 647630109,
900000000 => 586445753,
901000000 => 482254337,
902000000 => 718623833,
903000000 => 763514207,
904000000 => 66547751,
905000000 => 953634340,
906000000 => 351472920,
907000000 => 308474522,
908000000 => 494166907,
909000000 => 634359666,
910000000 => 172114298,
911000000 => 865440961,
912000000 => 364380585,
913000000 => 921648059,
914000000 => 965683742,
915000000 => 260466949,
916000000 => 117483873,
917000000 => 962540888,
918000000 => 237120480,
919000000 => 620531822,
920000000 => 193781724,
921000000 => 213092254,
922000000 => 107141741,
923000000 => 602742426,
924000000 => 793307102,
925000000 => 756154604,
926000000 => 236455213,
927000000 => 362928234,
928000000 => 14162538,
929000000 => 753042874,
930000000 => 778983779,
931000000 => 25977209,
932000000 => 49389215,
933000000 => 698308420,
934000000 => 859637374,
935000000 => 49031023,
936000000 => 713258160,
937000000 => 737331920,
938000000 => 923333660,
939000000 => 804861409,
940000000 => 83868974,
941000000 => 682873215,
942000000 => 217298111,
943000000 => 883278906,
944000000 => 176966527,
945000000 => 954913,
946000000 => 105359006,
947000000 => 390019735,
948000000 => 10430738,
949000000 => 706334445,
950000000 => 315103615,
951000000 => 567473423,
952000000 => 708233401,
953000000 => 48160594,
954000000 => 946149627,
955000000 => 346966053,
956000000 => 281329488,
957000000 => 462880311,
958000000 => 31503476,
959000000 => 185438078,
960000000 => 965785236,
961000000 => 992656683,
962000000 => 916291845,
963000000 => 881482632,
964000000 => 899946391,
965000000 => 321900901,
966000000 => 512634493,
967000000 => 303338827,
968000000 => 121000338,
969000000 => 967284733,
970000000 => 492741665,
971000000 => 152233223,
972000000 => 165393390,
973000000 => 680128316,
974000000 => 917041303,
975000000 => 532702135,
976000000 => 741626808,
977000000 => 496442755,
978000000 => 536841269,
979000000 => 131384366,
980000000 => 377329025,
981000000 => 301196854,
982000000 => 859917803,
983000000 => 676511002,
984000000 => 373451745,
985000000 => 847645126,
986000000 => 823495900,
987000000 => 576368335,
988000000 => 73146164,
989000000 => 954958912,
990000000 => 847549272,
991000000 => 241289571,
992000000 => 646654592,
993000000 => 216046746,
994000000 => 205951465,
995000000 => 3258987,
996000000 => 780882948,
997000000 => 822439091,
998000000 => 598245292,
999000000 => 869544707,
1000000000 => 698611116,
}

MOD = 10**9+7
M = 10**6

def fact(n)
    m = n/M*M
    ret = MEMO[m]
    ((m+1)..n).each do |i|
        ret = ret * i % MOD
    end
    ret
end

def extgcd(a, b)
    if b == 0
        {x: 1, y: 0, gcd: a}
    else
        prev = extgcd(b, a % b)
        {
            x: prev[:y],
            y: prev[:x] - (a / b) * prev[:y],
            gcd: prev[:gcd]
        }
    end
end

def inv_mod(num)
    hash = extgcd(num, MOD)
    hash[:x] % MOD
end


K = gets.to_i

if K % 2 == 1
    puts 0
else
    inv = inv_mod(fact(K/2))
    puts fact(K) * (inv**2) % MOD
end
0