思路:先計算出從第0個座標到第n-1個座標的距離,然後列舉忽略[1
,n−2
] 的點,直接可以得到需要走的距離。複雜度o(
n),當然暴力列舉再重新計算也是可以ac的,複雜度o(
n2)
ac**
#include
#include
using
namespace
std;
#define inf 0x3f3f3f3f
const
int maxn = 50+5;
int a[maxn];
int main()
int s = a[0], len = 0;
for(int i = 1; i < n; i++)
int ans = inf;
for(int i = 1; i < n-1; i++)
printf("%d\n", ans);
}return
0;}
如有不當之處歡迎指出! 度度熊回家
度度熊回家 時間限制 1秒 空間限制 32768k 乙個數軸上共有 n個點,第乙個點的座標是度度熊現在位置,第 n 1個點是度度熊的家。現在他需要依次的從 0號座標走到 n 1號座標。但是除了 0號座標和 n 1號座標,他可以在其餘的 n 2個座標中選出乙個點,並直接將這個點忽略掉,問度度熊回家至少...
度度熊回家
輸入乙個正整數n,n 50。接下來n個整數表示座標,正數表示x軸的正方向,負數表示x軸的負方向。絕對值小於等於100輸出描述 輸出乙個整數表示度度熊最少需要走的距離。輸入例子 4 1 4 1 3輸出例子 4思路 這題的關鍵在如何找到可以去除的那一點。考察連續的三個點,若三點的值都是遞增的,如,這樣,...
程式設計題 度度熊回家
乙個數軸上共有n個點,第乙個點的座標是度度熊現在位置,第n 1個點是度度熊的家。現在他需要依次的從0號座標走到n 1號座標。但是除了0號座標和n 1號座標,他可以在其餘的n 2個座標中選出乙個點,並直接將這個點忽略掉,問度度熊回家至少走多少距離?輸入描述 輸入乙個正整數n,n 50。接下來n個整數表...