1. 程式人生 > 其它 >Cookie的路徑以及Cookie域

Cookie的路徑以及Cookie域

功能實現了,不過細節沒有修改,想用的可以修改修改,哪裡細節不好註釋都寫了

*這個程式沒有設定相應的,如果輸入不是數學三角形的就會報錯!沒事改改,加點條件,別這麼懶
再用Arraylist我就是狗,真難用
* */
import java.util.ArrayList;
import java.util.Scanner;

/**
 * The type Three.
 */
public class three {
    /**
     * The constant arrayList.//輸入的數
     */
    public static ArrayList<String[]> arrayList = new
ArrayList<>(); /** * The constant array.//和,沒啥用 */ public static int[][] array = new int[10][10]; /** * The constant array2.//標記走哪裡的1-下 2-右下 */ public static int[][] array2 = new int[10][10]; /** * The constant data.//走過的 */ public static ArrayList<Integer> data = new
ArrayList(); /** * The constant scanner. */ public static Scanner scanner = new Scanner(System.in); /** * The constant N. */ public static int N = 0; /** * The entry point of application. * * @param args the input arguments */ public static void
main(String[] args) { System.out.println("請輸入行數"); N = scanner.nextInt(); scin(); System.out.println(maxSum(0,0)); scn(); } /** * 顯示走過的路 */ private static void scn(){ da(); for (Integer i : data) { System.out.println(i); } } /** * 講走過的路加入data陣列中 */ private static void da(){ int i = 0; int j = 0; while (true){ if(array2[i][j] == 1){ String[] re1 = re(i); data.add(conversion(re1[j])); i++; }else{ if (array2[i][j] == 2){ String[] re2 = re(i); data.add(conversion(re2[j])); i++; j++; }else { String[] re3 = re(i); data.add(conversion(re3[j])); break; } } } } /** * Scin. * -1--結束一行 * -2--結束本次 * 都不是--輸入 */ public static void scin(){ System.out.println("---------------------------"); System.out.println("每行結束請輸入-1,整體結束請輸入-2"); System.out.println("---------------------------"); ArrayList<String> datas = new ArrayList<>(); while(true){ String data = scanner.next(); if (!data .equals("-1") && !data .equals("-2") ){ datas.add(data); }else{ if (!data .equals("-2") ){ System.out.println("結束本行輸入"); arrayList.add(become_In(datas)); datas.clear(); }else{ System.out.println("結束本次輸入"); arrayList.add(become_In(datas)); datas.clear(); break; } } } } /** * 完成功能 * @param r 行 * @param j 列 * @return sum值 * 咋實現的不用寫把,你要是這都不會就找豆腐撞死把 */ private static int maxSum(int r,int j){ if (r == N-1){ String[] a = re(r); array[r][j] = conversion(a[j]); return conversion(a[j]); } int sum1 = maxSum(r+1,j); int sum2 = maxSum(r+1,j+1); if (sum1 > sum2){ String[] b = re(r); array[r][j] = sum1+conversion(b[j]); array2[r][j] = 1; return sum1+conversion(b[j]); } String[] c = re(r); array[r][j] = sum2+conversion(c[j]); array2[r][j] =2; return sum2+conversion(c[j]); } private static String[] re(int r){ String[] a = arrayList.get(r); return a; } /** * 將字串轉換為int * @param s * @return */ private static int conversion(String s){ int i = Integer.parseInt(s); return i; } /** * 將arraylist中的東西轉換為陣列 * @param x * @return */ private static String[] become_In(ArrayList<String> x){ String[] arr = x.toArray(new String[x.size()]); return arr; }
數字三角形