#include#include#include
#define maxnum 15 //
定義一共有十五個小區;
//對小區進行結構化定義;
struct
vex;
int main(void);
int x[15]=;
int y[15]=;
for(i=0;i)
if(village[i].x<0&&village[i].y<0
)
if(village[i].x<0&&village[i].y>0
)
if(village[i].x>0&&village[i].y<0
)
}//按照小區的角度進行排序,排序方法:冒泡。
for(i=0;i)}}
//按照掃瞄角度的大小順序,從小到大對更小區進行排序
for(i=0;i)
printf("\n
");//按照旋轉角度從小到大輸出小區的位置,位置相近的小區乘坐同一輛車;
printf("
第%d輛車:\t
",k);
for(i=0;i)
else
while(village[i].need>5
)
printf("\n
");printf(
"第%d輛車:\t
",k);
printf(
"%d\t
",village[i].number);
k++;
car=car-village[i].need;}}
printf("\n
");return0;
}
亞特蘭蒂斯 掃瞄法
有幾個古希臘書籍中包含了對傳說中的亞特蘭蒂斯島的描述。其中一些甚至包括島嶼部分地圖。但不幸的是,這些地圖描述了亞特蘭蒂斯的不同區域。您的朋友bill必須知道地圖的總面積。你自告奮勇寫了乙個計算這個總面積的程式。輸入格式 輸入包含多組測試用例。對於每組測試用例,第一行包含整數n,表示總的地圖數量。接下...
凸包(Graham掃瞄法構建)
ps 我的媽呀,心態 好像也不太難,看各種模板看的雲裡霧裡的,真的還是自己動手敲來的好,幾乎沒多久就懂的差不多了。乙個本該寒假就該掌握的知識,居然熬了我幾個小時。這一次還是很好的了解了凸包,以前看群裡學長們說,覺得好高大上,好難的樣子,仔細了解後發現其實也沒有想象中的那麼恐怖 凸包基本概念 這就是乙...
凸包問題 Graham掃瞄法
凸包點集q的凸包 convex hull 是指乙個最小凸多邊形,滿足q中的點或者在多邊形邊上或者在其內。右圖中由紅色線段表示的多邊形就是點集q 的凸包。頂點個數n 1 排序 在點集q中找最左下方的點p0,就是x座標和y座標都最小的點,其餘的點計算它們的極座標幅角,以幅角的非降序順序來排序,如果有幅角...