日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

NYoj 14会场安排问题

發(fā)布時間:2024/1/17 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NYoj 14会场安排问题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

會場安排問題

?時間限制:3000 ms? |? 內(nèi)存限制:65535 KB

難度:4

描述 學(xué)校的小禮堂每天都會有許多活動,有時間這些活動的計(jì)劃時間會發(fā)生沖突,需要選擇出一些活

動進(jìn)行舉辦。小劉的工作就是安排學(xué)校小禮堂的活動,每個時間最多安排一個活動。現(xiàn)在小劉有一些

活動計(jì)劃的時間表,他想盡可能的安排更多的活動,請問他該如何安排。

輸入第一行是一個整型數(shù)m(m<100)表示共有m組測試數(shù)據(jù)。 ?每組測試數(shù)據(jù)的第一行是一個整數(shù)n(1<n<10000)表示該測試數(shù)據(jù)共有n個活動。 ?隨后的n行,每行有兩個正整數(shù)Bi,Ei(0<=Bi,Ei<10000),分別表示第i個活動的起始與結(jié)束時間

(Bi<=Ei) ?輸出對于每一組輸入,輸出最多能夠安排的活動數(shù)量。 ?每組的輸出占一行樣例輸入2 2 1 10 10 11 3 1 10 10 11 11 20 ?樣例輸出1 2提示注意:如果上一個活動在t時間結(jié)束,下一個活動最早應(yīng)該在t+1時間開始

?

?

最好改進(jìn)下排序算法,超時 #include<stdio.h> void sort(int *s,int *f,int n) { int i,j,temp; for(i=1;i<n;i++)//冒泡排序 { for(j=0;j<n-i;j++) { if(f[j]>f[j+1])//結(jié)束時間由小到大排序 { temp=f[j]; f[j]=f[j+1]; f[j+1]=temp; //或者a^=b^=a^=b

temp=s[j]; s[j]=s[j+1]; s[j+1]=temp; } } } } int greedyselector(int *s,int *f,int n) { int i,j=0; int count=1; for( i=1;i<n;i++) { if(s[i]>=f[j]+1) { j=i; count++;

} } return count; } int main() { int m;? int n,i; int count;? int s[10000],f[10000]; scanf("%d",&m); while(m--) {

scanf("%d",&n); for(i=0;i<n;i++) scanf("%d%d",&s[i],&f[i]);? sort(s,f,n); count=greedyselector(s,f,n); printf("%d\n",count); } return 0; }

轉(zhuǎn)載于:https://www.cnblogs.com/hxsyl/archive/2012/04/12/2444986.html

總結(jié)

以上是生活随笔為你收集整理的NYoj 14会场安排问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。