Test Message

d277: 矩形對角線

內容

同學們要在廣場上佈置一個矩形花壇,計畫用“串紅”擺成對角線。如果一條對角線用了 N 盆,還需要多少盆“串紅”呢?


輸入

每行一個 N(0<n<2^31).

38

輸出

輸出還需多少盆。

38


解題思路

題意為當有一矩形花壇從左上到右下對角線擺放了 n 個花盆,那求從右上到左下對角線還要再擺幾盆花盆才能形成一個叉。

Ex: n = 3

x o o
o x o
o o x

這時候就還需要右上和左下兩個才能變成

x o x
o x o
x o x

本題重點在中心交叉處是否重疊,若 n 為偶數項不會重疊、奇數項最中間那個重疊。
所以判斷輸入為偶數或奇數,偶數直接輸出、奇數減一後輸出即可。


完整程式碼

AC (2ms, 80KB)
#include <stdio.h>

int main()
{
int n;
while (scanf(" %d", &n) == 1)
{
printf("%d\n", n & 1 ? n - 1 : n);
}
return 0;
}