[程式設計題] 度度熊回家
時間限制: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-2個點的distance 然後選出最小的distance
1)採用兩層迴圈,第一層控制刪除的點從1-n-2 第二層迴圈j從1到n-1 求出從0-n-1去掉刪除的點的distance
2)其中用k記錄當前位置的前乙個位置的索引(用k記錄原因為可能為j-1 或者j-2 如果j-1刪除了則為j-2)
3)使用min_dis記錄最小的距離值
注意點:每次二層迴圈時,記得中間變數distance 以及 k 的重置操作
1 #include 2 #include 3using
namespace
std;45
intmain()615
int min_dis = 0;16
int distance = 0;17
int k = 0;//
記錄上一位置
18//
從i=1 到i=n-2 每次刪除乙個
19for(int i=1;i<=n-2;i++)
2029 distance += abs(a[j]-a[k]);//
兩點之間距離的演算法
30 k =j;31}
32if(i==1)//
最開始的第乙個distance賦給min_dis
3336
//之後distance37
if(distance 38 min_dis =distance;39}
40 cout42return0;
43 }
程式設計題 度度熊回家 百度17春招程式設計題
乙個數軸上共有n個點,第乙個點的座標是度度熊現在位置,第n 1個點是度度熊的家。現在他需要依次的從0號座標走到n 1號座標。但是除了0號座標和n 1號座標,他可以在其餘的n 2個座標中選出乙個點,並直接將這個點忽略掉,問度度熊回家至少走多少距離?輸入描述 輸入乙個正整數n,n 50。接下來n個整數表...
百度之星2019 1001 度度熊與數字
題意 給出乙個數字,求出其所有因數中,滿足該因數也是這個數所有位上數相加之和的因數,的所有這些因數 思路 一道簽到題做了半個多小時整個人都是懵逼的,首先從遍歷n遍,然後遍歷n 2遍,遍歷n p遍 p為除1外該數最小因數 1e9的資料大小無疑肯定是tle的。最後想想,tm的既然同時是n和n的各位和的因...
2017百度之星資格賽 1002度度熊的王國戰略
problem description 度度熊國王率領著喵哈哈族的勇士,準備進攻嘩啦啦族。嘩啦啦族是乙個強悍的民族,裡面有充滿智慧型的謀士,擁有無窮力量的戰士。所以這一場戰爭,將會十分艱難。為了更好的進攻嘩啦啦族,度度熊決定首先應該從內部瓦解嘩啦啦族。第一步就是應該使得嘩啦啦族內部不能同心齊力,需要...