[程式設計題] 保衛方案,戰爭遊戲的至關重要環節就要到來了,這次的結果將決定王國的生死存亡,小b負責首都的防衛工作。首都位於乙個四面環山的盆地中,周圍的n個小山構成乙個環,作為預警措施,小b計畫在每個小山上設定乙個觀察哨,日夜不停的瞭望周圍發生的情況。 一旦發生外地入侵事件,山頂上的崗哨將點燃烽煙,若兩個崗哨所在的山峰之間沒有更高的山峰遮擋且兩者之間有相連通路,則崗哨可以觀察到另乙個山峰上的烽煙是否點燃。由於小山處於環上,任意兩個小山之間存在兩個不同的連線通路。滿足上述不遮擋的條件下,一座山峰上崗哨點燃的烽煙至少可以通過一條通路被另一端觀察到。對於任意相鄰的崗哨,一端的崗哨一定可以發現一端點燃的烽煙。 小b設計的這種保衛方案的乙個重要特性是能夠觀測到對方烽煙的崗哨對的數量,她希望你能夠幫她解決這個問題。
輸入描述:
輸入中有多組測試資料,每一組測試資料的第一行為乙個整數n(3<=n<=10^6),為首都周圍的小山數量,第二行為n個整數,依次表示為小山的高度h(1<=h<=10^9).
輸出描述:
對每組測試資料,在單獨的一行中輸出能相互觀察到的崗哨的對數。
輸入例子1:
51 2 4 5 3
輸出例子1:
7#include
#include
using namespace std;
int n; //小山的數量
int location(int num) //for
int count=0;
for(int i=0; imax)
max=h[k];
} int min=h[i]max)
count++;
} }
cout<
演算法題6 保衛方案
戰爭遊戲的至關重要環節就要到來了,這次的結果將決定王國的生死存亡,小b負責首都的防衛工作。首都位於乙個四面環山的盆地中,周圍的n個小山構成乙個環,作為預警措施,小b計畫在每個小山上設定乙個觀察哨,日夜不停的瞭望周圍發生的情況。一旦發生外地入侵事件,山頂上的崗哨將點燃烽煙,若兩個崗哨所在的山峰之間沒有...
京東校招筆試 保衛方案
時間限制 c c 語言1000ms 其他語言3000ms 記憶體限制 c c 語言65536kb 其他語言589824kb 題目描述 戰爭遊戲的至關重要環節就要到來了,這次的結果將決定王國的生死存亡,小b負責首度的防衛工作。首都處於乙個四面環山的盆地,周圍的n個小山構成乙個環,作為預警措施,小b計畫...
保衛方案(京東2017筆試題)
戰爭遊戲的至關重要環節就要到來了,這次的結果將決定王國的生死存亡,小b負責首都的防衛工作。首都位於乙個四面環山的盆地中,周圍的n個小山構成乙個環,作為預警措施,小b計畫在每個小山上設定乙個觀察哨,日夜不停的瞭望周圍發生的情況。一旦發生外地入侵事件,山頂上的崗哨將點燃烽煙,若兩個崗哨所在的山峰之間沒有...