多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > 互聯(lián)網(wǎng) > POJ 1548 Robots(最小路徑覆蓋)

POJ 1548 Robots(最小路徑覆蓋)

來源:程序員人生   發(fā)布時間:2014-11-11 08:57:12 閱讀次數(shù):3356次

POJ 1548 Robots

題目鏈接

題意:乍1看還以為是小白上那題dp,其實不是,就是求1共幾個機器人可以覆蓋所有路徑

思路:最小路徑覆蓋問題,1個點如果在另外一個點右下方,就建邊,然后跑最小路徑覆蓋便可

代碼:

#include <cstdio> #include <cstring> #include <vector> #include <algorithm> using namespace std; const int N = 25 * 25; int x[N], y[N], cnt = 1; vector<int> g[N]; bool judge(int i, int j) { return x[j] >= x[i] && y[j] >= y[i]; } int left[N], vis[N]; bool dfs(int u) { for (int i = 0; i < g[u].size(); i++) { int v = g[u][i]; if (vis[v]) continue; vis[v] = 1; if (left[v] == ⑴ || dfs(left[v])) { left[v] = u; return true; } } return false; } int hungary() { int ans = 0; memset(left, ⑴, sizeof(left)); for (int i = 0; i < cnt; i++) { memset(vis, 0, sizeof(vis)); if (dfs(i)) ans++; } return ans; } int main() { while (~scanf("%d%d", &x[0], &y[0])) { if (x[0] == ⑴ && y[0] == ⑴) break; while (~scanf("%d%d", &x[cnt], &y[cnt])) { if (x[cnt] == 0 && y[cnt] == 0) break; cnt++; } for (int i = 0; i < cnt; i++) { g[i].clear(); for (int j = 0; j < i; j++) { if (judge(i, j)) g[i].push_back(j); if (judge(j, i)) g[j].push_back(i); } } printf("%d ", cnt - hungary()); cnt = 1; } return 0; }


生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 最近高清中文在线字幕在线观看 | 日本欧美韩国一区二区三区 | 18欧美 | 欧美欧美欧美 | 免费播放成人生活片 | 欧美自拍网站 | 国产精品69白浆在线观看免费 | 亚洲欧美综合久久 | 一级白嫩美女毛片免费 | 欧美日韩精品乱国产 | 国产aaa女人十八毛片 | 男女在线免费视频 | www.亚洲视频.com | 五月天婷婷一区二区三区久久 | 一级美国乱色毛片 | 一区二区三区不卡视频 | 国产精品久久久久久麻豆一区 | 天堂免费观看 | 欧美一级第一免费高清 | 特级aav毛片日本免费视频 | 亚洲视频免费播放 | 欧美jizz18性欧美 | 一区二区三区四区国产精品 | 日韩欧美亚洲国产一区二区三区 | 亚洲人人视频 | 亚洲视频 欧美视频 | 日本免费xxxx色视频 | 国产一区二区在线观看麻豆 | 中文字幕7 | 国产国产人在线成免费视频69 | 第一福利在线观看 | 亚洲成a人片在线观看中文!!! | 欧美日韩国产另类一区二区三区 | 欧美高清国产 | 韩国片在线观看 | 亚洲综合黄色 | 国产高清在线精品一区二区三区 | 人操人 | 91人人草| 日本一区二区三区不卡在线看 | 日韩免费 |