演算法上沒有難度,需要注意邏輯問題設計。
思路:
列印圈:
int curr = r1;
//左上角橫座標
int curc = c1;
//左上角縱座標
while
(curc != c2)
//到頭了
while
(curr != r2)
//到了
while
(curc != c1)
while
(curr != r1)
需要考慮如果只有一行或者一列的情況
if
(r1 == r2)
}else
if(c1 == c2)
}
完整**:
/*
* 旋轉列印陣列*/
public
class
main
}spiralorderprint
(matrix);}
public
static
void
spiralorderprint
(int
matrix)
int r1 =
0, c1 =0;
int r2 = matrix.length -
1, c2 = matrix[0]
.length -1;
while
(r1 <= r2 && c1 <= c2)
}private
static
void
printedge
(int
matrix,
int r1,
int c1,
int r2,
int c2)
}else
if(c1 == c2)
}else
while
(curr != r2)
while
(curc != c1)
while
(curr != r1)}}
}
宇宙無敵加法器
地球人習慣使用十進位制數,並且預設乙個數字的每一位都是十進位制的。而在 pat 星人開掛的世界裡,每個數字的每一位都是不同進製的,這種神奇的數字稱為 pat數 每個 pat 星人都必須熟記各位數字的進製表,例如 0527 就表示最低位是 7 進製數 第 2 位是 2 進製數 第 3 位是 5 進製數...
7 2 宇宙無敵大招呼
據說所有程式設計師學習的第乙個程式都是在螢幕上輸出一句 hello world 跟這個世界打個招呼。作為天梯賽中的程式設計師,你寫的程式得高階一點,要能跟任意指定的星球打招呼。輸入格式 輸入在第一行給出乙個星球的名字 s,是乙個 由不超過 7 個英文本母組成 的單詞,以回車結束。輸出格式 在一行中輸...
1074 宇宙無敵加法器
地球人習慣使用十進位制數,並且預設乙個數字的每一位都是十進位制的。而在pat星人開掛的世界裡,每個數字的每一位都是不同進製的,這種神奇的數字稱為 pat數 每個pat星人都必須熟記各位數字的進製表,例如 0527 就表示最低位是7進製數 第2位是2進製數 第3位是5進製數 第4位是10進製數,等等。...