在n*m個方格中,m為奇數,放置有n*m個數,方格中間的下方有一人,此人可按照五個方向前進但不能越出方格。要求找到一條從低到頂的路徑,使其基數相加和最大。
#include#includeint main(void),
, ,
, ,
};int b[6][7], c[6][7];
int i, j, k;
int max;
int flag;
int temp;
for (i = 0; i<6; i++)
for (j = 0; j<7; j++)
for (i = 1; i<5; i++)}}
b[i][j] = max;
c[i][j] = flag;
} }for (j = 1; j <= 5; j++)
}} b[i][j] = max;
c[i][j] = flag;
} max = 0;
for (j = 1; j <= 5; j++)
} printf("最大值的和為:%d\n", max);
printf("走過的數為:");
temp = c[i][flag];
printf("%5d", a[i][temp]);
for (j = i; j>0; j--)
printf("\n");
system("pause");
return 0;
}
memset在求最短路徑中的使用
int a 20 menset a,0 sizeof a 第乙個引數a表示陣列a 20 的陣列名,也是該陣列的首位址 第二個引數0表示接下來要給陣列所賦的值 第三個引數表示從首位址開始需要賦值為0的長度,sizeof a 表示整個陣列的長度為20 sizeof int 80 也就是前80個位元組變成...
(java)求m,n最大公約數的三種方法
先學下英語 最大公約數gcm greatest common measure 最小公倍數lcm lowest common multiple 相減求公因數 public intgetgcm int m int n if m n 最大公約數是 m return m 歐幾里德演算法 遞迴 public ...
求十個整數中的最大值
求十個整數中的最大值 int i 0 int max 0 int a 10 printf 請輸入十個整數 n for i 0 i 10 i max a 0 for i 0 i 10 i printf 十個整數中的最大值為 d n max 將三個數按從小到大輸出 int a,b,c int tmp p...