在一條數軸上有 nn 家商店,它們的座標分別為 a1a1~anan。
現在需要在數軸上建立一家貨倉,每天清晨,從貨倉到每家商店都要運送一車商品。
為了提高效率,求把貨倉建在何處,可以使得貨倉到每家商店的距離之和最小。
輸入格式
第一行輸入整數n。
第二行n個整數a1a1~anan。
輸出格式
輸出乙個整數,表示距離之和的最小值。
資料範圍
1≤n≤1000001≤n≤100000
輸入樣例:
4
6 2 9 1
輸出樣例:
12
簡單求中位數
n=input()
n=int(n)
a=[int(i) for i in input().split()]
pos=int((n)/2)
ans=0
a.sort()
for i in range(0,n):
ans+=abs(a[i]-a[pos])
print(ans)
《演算法競賽高階指南》排序 貨倉選址
在一條數軸上有 n 家商店,它們的座標分別為 a1 an。現在需要在數軸上建立一家貨倉,每天清晨,從貨倉到每家商店都要運送一車商品。為了提高效率,求把貨倉建在何處,可以使得貨倉到每家商店的距離之和最小。第一行輸入整數n。第二行n個整數a1 an。輸出乙個整數,表示距離之和的最小值。1 n 10000...
《演算法競賽高階指南》排序 貨倉選址
在一條數軸上有 n 家商店,它們的座標分別為 a1 an。現在需要在數軸上建立一家貨倉,每天清晨,從貨倉到每家商店都要運送一車商品。為了提高效率,求把貨倉建在何處,可以使得貨倉到每家商店的距離之和最小。第一行輸入整數n。第二行n個整數a1 an。輸出乙個整數,表示距離之和的最小值。1 n 10000...
演算法競賽高階指南 位運算
四種基本操作 與 或 非 異或 補碼 int 32位,最高位0代表為整數,最高位為1代表負數。x 00000000000000000000 32個0 就是x的補碼。x 1初始化 memset f,0x3f,sizeof f 每個位元組為0x3f,那麼每個int的數為4個位元組,就是0x3f3f3f3...