2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								id: 5900f5311000cf542c510044
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								title: '問題 453: 格子四角形'
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								challengeType: 5
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								forumTopicId: 302126
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								dashedName: problem-453-lattice-quadrilaterals
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --description--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								単純四角形とは、4 つの相異なる頂点を持ち、平角を持たず、かつ自己交差していない多角形のことです。
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$0 ≤ x ≤ m$, $0 ≤ y ≤ m$ を満たす座標 ($x$, $y$) の格子点を頂点とする単純四角形の個数を、$Q(m, n)$ とします。
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								例えば、下図のとおり $Q(2, 2) = 94$ です。
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< img  class = "img-responsive center-block"  alt = "0 ≤ x ≤ m, 0 ≤ y ≤ n を満たす座標 ($x$, $y$) の格子点を頂点とする 94 個の四角形"  src = "https://cdn.freecodecamp.org/curriculum/project-euler/lattice-quadrilaterals.png"  style = "background-color: white; padding: 10px;"  / >  
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$Q(3, 7) = 39\\,590$, $Q(12, 3) = 309\\,000$, $Q(123, 45) = 70\\,542\\,215\\,894\\,646$ であることも確認できます。
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$Q(12\\,345, 6\\,789)\bmod 135\\,707\\,531$ を求めなさい。
							 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --hints--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-01-22 20:38:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								`latticeQuadrilaterals()`  は `104354107`  を返す必要があります。 
						 
					
						
							
								
									
										
										
										
											2022-01-21 01:00:18 +05:30 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								assert.strictEqual(latticeQuadrilaterals(), 104354107);
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --seed--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## --seed-contents--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function latticeQuadrilaterals() {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  return true;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								latticeQuadrilaterals();
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --solutions--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// solution required
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```