45 lines
		
	
	
		
			921 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			45 lines
		
	
	
		
			921 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | id: 5900f3e71000cf542c50fefa | |||
|  | title: '問題 123: 素数の平方数で除した余り' | |||
|  | challengeType: 5 | |||
|  | forumTopicId: 301750 | |||
|  | dashedName: problem-123-prime-square-remainders | |||
|  | --- | |||
|  | 
 | |||
|  | # --description--
 | |||
|  | 
 | |||
|  | $n$ 番目の素数 (2, 3, 5, 7, 11, ...) を $p_n$ とし、${(p_n−1)}^n + {(p_n+1)}^n$ を ${p_n}^2$ で除した余りを $r$ とします。 | |||
|  | 
 | |||
|  | 例えば、$n = 3 のとき、p_3 = 5$, $4^3 + 6^3 = 280 ≡ 5\\ mod\\ 25$ となります。 | |||
|  | 
 | |||
|  | 余りが初めて $10^9$ を超える $n$ の最小値は 7037です。 | |||
|  | 
 | |||
|  | 余りが初めて $10^{10}$ を超える $n$ の最小値を求めなさい。 | |||
|  | 
 | |||
|  | # --hints--
 | |||
|  | 
 | |||
|  | `primeSquareRemainders()` は `21035` を返す必要があります。 | |||
|  | 
 | |||
|  | ```js | |||
|  | assert.strictEqual(primeSquareRemainders(), 21035); | |||
|  | ``` | |||
|  | 
 | |||
|  | # --seed--
 | |||
|  | 
 | |||
|  | ## --seed-contents--
 | |||
|  | 
 | |||
|  | ```js | |||
|  | function primeSquareRemainders() { | |||
|  | 
 | |||
|  |   return true; | |||
|  | } | |||
|  | 
 | |||
|  | primeSquareRemainders(); | |||
|  | ``` | |||
|  | 
 | |||
|  | # --solutions--
 | |||
|  | 
 | |||
|  | ```js | |||
|  | // solution required | |||
|  | ``` |