Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * @author MUHAMMAD AZRI BIN JASNI @ ABDUL RANI
- * @version 1 APRIL 2013
- *
- * reference: http://www.mathblog.dk/project-euler-18/
- * http://www.mkyong.com/java/how-to-get-the-total-number-of-lines-of-a-file-in-java/
- */
- import java.io.*;//File & BufferedReader
- import java.util.*;//Scanner
- public class solution18_manualinput
- {
- public static void main(String [] args) throws IOException
- {
- //time start
- long begin = System.currentTimeMillis();
- //read text file as data input
- //File inFile = new File("testinput.txt");
- //File inFile = new File("input.txt");
- //calc Lines number[MAX]
- //int MAX = 4;
- int MAX=15;
- //int MAX = 0;
- /*BufferedReader br = new BufferedReader(new FileReader(inFile));
- while (br.readLine() != null) {
- MAX++;
- }
- br.close();*/
- //set up array
- //Scanner sc = new Scanner(inFile);
- //int [][] array = new int[MAX][MAX];
- //chng into arrays of data triangle
- /*for (int i=0; i<MAX; i++)
- {
- for(int j=0; j<MAX; j++)
- {
- array[i][j]= Integer.parseInt(sc.next());
- }
- }*/
- /*int [][] array = new int[][]{
- {3,0,0,0},
- {7,4,0,0},
- {2,4,6,0},
- {8,5,9,3}
- };
- */
- int [][] array = new int[][]{
- {75,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
- {95,64,0,0,0,0,0,0,0,0,0,0,0,0,0},
- {17,47,82,0,0,0,0,0,0,0,0,0,0,0,0},
- {18,35,87,10,0,0,0,0,0,0,0,0,0,0,0},
- {20,04,82,47,65,0,0,0,0,0,0,0,0,0,0},
- {19,01,23,75,03,34,0,0,0,0,0,0,0,0,0},
- {88,02,77,73,07,63,67,0,0,0,0,0,0,0,0},
- {99,65,04,28,06,16,70,92,0,0,0,0,0,0,0},
- {41,41,26,56,83,40,80,70,33,0,0,0,0,0,0},
- {41,48,72,33,47,32,37,16,94,29,0,0,0,0,0},
- {53,71,44,65,25,43,91,52,97,51,14,0,0,0,0},
- {70,11,33,28,77,73,17,78,39,68,17,57,0,0,0},
- {91,71,52,38,17,14,91,43,58,50,27,29,48,0,0},
- {63,66,04,68,89,53,67,30,73,16,69,87,40,31,0},
- {04,62,98,27,23,9,70,98,73,93,38,53,60,04,23},
- };
- //display array
- /*for (int i=0; i<MAX; i++)
- {
- for(int j=0; j<MAX; j++)
- {
- System.out.print(array[i][j]+" ");
- }
- System.out.println();
- }*/
- //perform the triangle max thingy
- for (int i=MAX-2; i>=0; i--)
- {
- for(int j=0; j<=i; j++)
- {
- array[i][j]+= Math.max(array[i+1][j] , array[i+1][j+1]);
- }
- //display array
- /*for (int k=0; k<MAX; k++)
- {
- for(int l=0; l<MAX; l++)
- {
- System.out.print(array[k][l]+" ");
- }
- System.out.println();
- }*/
- }
- //display final triangle as answer.
- System.out.println(array[0][0]);
- //time end
- long end = System.currentTimeMillis();
- System.out.println("Time:" + (end-begin)+" ms");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement