★☆ 輸入檔案:palmia 河在某國從東向西流過,並把該國分為南北兩個部分。河的兩岸各有 n 個城市,且北岸的每乙個城市都與南岸的某個城市是友好城市,而且對應的關係是一一對應的。現在要求在兩個友好城市之間建立一條航線,但由於天氣的關係,所有航線都不能相交,因此,就不可能給所有的友好城市建立航線。maxxl.in
輸出檔案:maxxl.out
簡單對比時間限制:1 s 記憶體限制:128 mb
問題:當城市個數和友好關係建立之後,選擇一種修建航線的方案,能建最多的航線而不相交。(若有多種方案,修建航線最多且城市數量相同,選擇從前到後城市標號字典序小的那種方案.)
【輸入格式】
輸入由若干行組成,第一行有乙個整數,n(1≤n≤10000);表示城市數。第2至n+1行依次是南岸城市的北岸友好城市編號。
【輸出格式】
輸出共兩行,第一行是建立航線的數量。第二行是建立航線的北岸城市編號。
【輸入樣例】
輸入檔名:maxxl.in
141379
1638
2437
1844
1921
2263
15【輸出樣例】
輸出檔名:maxxl.out
87 9 16 18 19 21 22 63
#include#include#define maxn 10010
using
namespace
std;
inta[maxn],f[maxn],pre[maxn];
intmain()
for(i=1;i<=n;i++)
else
pre[j]=min(pre[j],i);}}
}int maxx=0
;
for(i=1;i<=n;i++)
if(f[i]>maxx)
printf(
"%d\n
",maxx);
int b[maxn],l=0
;
while(k!=pre[k])
b[++l]=a[k];
for(i=maxx;i>=1;i--)
printf(
"%d
",b[i]);
return0;
}
迷宮問題(輸出路徑)
迷宮問題 time limit 1000 ms memory limit 65536 kb 64bit io format i64d i64u description 定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求...
OJ 4127 迷宮問題 遞迴輸出路徑
定義乙個二維陣列 int maze 5 5 它表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,只能橫著走或豎著走,不能斜著走,要求程式設計序找出從左上角到右下角的最短路線。輸入乙個5 5的二維陣列,表示乙個迷宮。資料保證有唯一解。輸出左上角到右下角的最短路徑,格式如樣例所示。樣例輸入0 1 0 0...
POJ 3414(BFS 輸出路徑 倒水問題)
題意 給你兩個容器,分別能裝下a公升水和b公升水,並且可以進行以下操作 fill i 將第i個容器從水龍頭裡裝滿 1 i 2 drop i 將第i個容器抽乾 pour i,j 將第i個容器裡的水倒入第j個容器 這次操作結束後產生兩種結果,一是第j個容器倒滿並且第i個容器依舊有剩餘,二是第i個容器裡的...