Submission #1689789
Source Code Expand
import java.math.BigInteger; import java.util.Scanner; public class Main { BigInteger[][] base = new BigInteger[2][2]; static Scanner sc = new Scanner(System.in); public static void main(String[] args) { int n = sc.nextInt(); helper(n); } private static void helper(int n) { // TODO Auto-generated method stub for (int i = 1; i <= 3500; i++) { for (int j = 1; j <= 3500; j++) { long up = 4*(long)i * (long)j -(long) j * (long)n - (long)i * (long)n; long down = (long)i * (long)j * (long)n; if(i==3498&&j==3498){ System.out.println(up); System.out.println(down); System.out.println(down/up); } if (up>0&&down % up==0) { System.out.println("" + i + " " + j + " " + down/up); return; } } } } private BigInteger[][] matrixMult(BigInteger[][] leftmatrix, BigInteger[][] rightMatrix) { // TODO Auto-generated method stub BigInteger[][] res = new BigInteger[2][2]; res[0][0] = leftmatrix[0][0].multiply(rightMatrix[0][0]).add(leftmatrix[0][1].multiply(rightMatrix[1][0])); res[0][1] = leftmatrix[0][0].multiply(rightMatrix[0][1]).add(leftmatrix[0][1].multiply(rightMatrix[1][1])); res[1][0] = leftmatrix[1][0].multiply(rightMatrix[0][0]).add(leftmatrix[1][1].multiply(rightMatrix[1][0])); res[1][1] = leftmatrix[1][0].multiply(rightMatrix[0][1]).add(leftmatrix[1][1].multiply(rightMatrix[1][1])); return res; } public BigInteger[][] fib(int n) { if ((n) <= 1) return base; BigInteger[][] res = ((n) % 2 == 1 ? fib((n - 1) / 2) : fib(n / 2)); res = matrixMult(res, res); if ((n) % 2 == 1) res = matrixMult(res, base); return res; } }
Submission Info
Submission Time | |
---|---|
Task | C - 4/N |
User | zcg496203111 |
Language | Java8 (OpenJDK 1.8.0) |
Score | 300 |
Code Size | 1693 Byte |
Status | AC |
Exec Time | 112 ms |
Memory | 23124 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0002, 3485, 4664 |
All | 0002, 0003, 0004, 0005, 0006, 0007, 0049, 0073, 0097, 0121, 0137, 0139, 0156, 0163, 0169, 0181, 0191, 0223, 0229, 0263, 0271, 0289, 0361, 0481, 0529, 0551, 0649, 0720, 0916, 1081, 1156, 1498, 1921, 2041, 2329, 2449, 2568, 2918, 2929, 3289, 3429, 3485, 3763, 4081, 4277, 4648, 4652, 4656, 4660, 4664 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0002 | AC | 93 ms | 19924 KB |
0003 | AC | 90 ms | 19924 KB |
0004 | AC | 91 ms | 21716 KB |
0005 | AC | 91 ms | 19412 KB |
0006 | AC | 92 ms | 21204 KB |
0007 | AC | 93 ms | 19156 KB |
0049 | AC | 93 ms | 19668 KB |
0073 | AC | 98 ms | 18772 KB |
0097 | AC | 96 ms | 19024 KB |
0121 | AC | 95 ms | 21588 KB |
0137 | AC | 96 ms | 20820 KB |
0139 | AC | 95 ms | 23124 KB |
0156 | AC | 98 ms | 17620 KB |
0163 | AC | 102 ms | 17100 KB |
0169 | AC | 97 ms | 19924 KB |
0181 | AC | 97 ms | 21844 KB |
0191 | AC | 104 ms | 18900 KB |
0223 | AC | 98 ms | 19540 KB |
0229 | AC | 97 ms | 18768 KB |
0263 | AC | 100 ms | 19924 KB |
0271 | AC | 98 ms | 16980 KB |
0289 | AC | 97 ms | 18388 KB |
0361 | AC | 99 ms | 21844 KB |
0481 | AC | 98 ms | 18772 KB |
0529 | AC | 99 ms | 19796 KB |
0551 | AC | 102 ms | 21716 KB |
0649 | AC | 105 ms | 19284 KB |
0720 | AC | 99 ms | 20564 KB |
0916 | AC | 98 ms | 18764 KB |
1081 | AC | 100 ms | 19156 KB |
1156 | AC | 98 ms | 19924 KB |
1498 | AC | 105 ms | 21844 KB |
1921 | AC | 100 ms | 19156 KB |
2041 | AC | 100 ms | 21716 KB |
2329 | AC | 101 ms | 19924 KB |
2449 | AC | 101 ms | 19924 KB |
2568 | AC | 102 ms | 19924 KB |
2918 | AC | 112 ms | 21972 KB |
2929 | AC | 102 ms | 18772 KB |
3289 | AC | 109 ms | 19284 KB |
3429 | AC | 103 ms | 21716 KB |
3485 | AC | 111 ms | 20820 KB |
3763 | AC | 103 ms | 19156 KB |
4081 | AC | 105 ms | 19028 KB |
4277 | AC | 105 ms | 19796 KB |
4648 | AC | 105 ms | 21588 KB |
4652 | AC | 106 ms | 18772 KB |
4656 | AC | 107 ms | 19024 KB |
4660 | AC | 105 ms | 18644 KB |
4664 | AC | 106 ms | 19924 KB |