額,因為上次在做小公尺麵試題目的時候碰到了這樣的乙個題目,如下
說是列印1000*1000陣列中的某個位置的數字,但是這些數字是按找回型排列的。
如:1 2 3 4 5 6 7 8
28 29 30 31 32 33 34 9
27 48 49 50 51 52 35 10
26 47 60 61 62 53 36 11
25 46 59 64 63 54 37 12
24 45 58 57 56 55 38 13
23 44 43 42 41 40 39 14
22 21 20 19 18 17 16 15
思路:把這個陣列看成乙個回字形,然後回字裡面再包裹乙個回字。。。。
把每個數字的陣列索引寫在一旁做參考,能夠幫助自己很快的找到想要位置。
先給上面最外邊第一條陣列賦值,方向是從左到右→
給第二條陣列賦值,方向是從上到下↓
第三條,從右到左←
第四條,從下到上↑
上面幾步為乙個迴圈,反覆重複上面的步驟。。
下面上**,因為我想起了火影忍著裡的鳴人- - 。
class naratoarr
static void narato (int size)
for (int i=start+1; i<=end; i++)
for (int i=end-1; i>=start; i--)
for (int i=end-1; i>start; i--)
start++; //兩個座標都減1,就像是方陣小了一圈
end--;
}""+end);
if ((size%2)==1)//當方陣大小為奇數時,為最中心的點賦值
arr[start][end] = size*size;
for (int i=0; i//遍歷二維陣列,並列印
for (int j=0; jsystem.out.print(arr[i][j]+"\t");
system.out.println();}}
}
列印回型矩陣
n 1 n 2 n 3 3 2 4 3 2 15 14 13 12 0 1 5 0 1 4 3 2 11 6 7 8 5 0 1 10 6 7 8 9 如何列印這個回型資料?現在只實現了如何列印偶數字的,因為奇偶數的最大值不同,但是基本思路還是一樣的。自己要用的可以再寫。奇數的最大值 n 1 n 1...
python列印回數
借助python內建的filter 方法實現。python內建的filter 方法用於過濾序列。函式接收乙個函式和乙個序列,filter 把傳入的函式依次作用於每個元素,然後根據返回值是true還是false決定保留還是丟棄該元素。code coding utf 8 defis palindrome...
回型輸入和回型輸出
輸入m,n,輸出乙個m n的回型 順時針方向 矩陣,再回型 逆時針方向 輸出 對於是順時針輸入還是逆時針輸入,只需要更改初始x,y值就行。順時針 x 0,y 1 逆時針 x 1,y 0即可。至於為什麼是 1,是因為為了程式設計的方便以及避免自加後越界導致需要減回邊界 這裡使用的是迴圈較為方便,經過分...