並查集的另乙個思考方向 POJ1456

2021-08-17 10:13:33 字數 845 閱讀 3543



poj1456

這個題一看好像就是用貪心做啊,乙個結構體,拍一下序,vis陣列一遍遍掃蕩,最後輸出值,沒錯,貪心的確能做出來,而這類題目也能應用並查集,實現得思想也是貪心

#include #include #include #include using namespace std;

const int maxn = 1e4 + 1e2;

int pre[maxn];

int n;

struct node

obj[maxn];

void init()

memset(obj,0,sizeof(obj));

}bool cmp(node a,node b)

一開始都差不多哈,並查集pre【i】得含義是第i天前第乙個空得天數是第幾天!!(差不多了吧和你反向暴力一遍vis陣列貌似差不多)

但是並查集能路徑壓縮欸

int find(int x)

return pre[x];

}

int main()

sort(obj,obj+n,cmp);

int ans = 0;

for(int i = 0;i < n;i++)

}printf("%d\n",ans);

}return 0;

}

這個題並不算難,主要是提供了另乙個思考的方向吧,現在不是出初中高中得應試階段,每乙個型別都有固定得做法,而acm這種題,就應該去創新的想一想,去應用更多好玩得資料結構,去做更多好玩得事情

mysql 從乙個表中查資料並插入另乙個表實現方法

mysql 從乙個表中查資料並插入另乙個表實現方法 不管是在 開發還是在應用程式開發中,我們經常會碰到需要將mysql或ms sqlserver某個表的資料批量匯入到另乙個表的情況,甚至有時還需要指定匯入字段。本文就將以mysql資料庫為例,介紹如何通過sql命令行將某個表的所有資料或指定欄位的資料...

mysql 從乙個表中查資料並插入另乙個表實現方法

類別一 如果兩張張表 匯出表和目標表 的字段一致,並且希望插入全部資料,可以用這種方法 insert into 目標表 select from 表 例如,要將 articles 表插入到 newarticles 表中,則可以通過如下sql語句實現 insert into newarticles se...

乙個陣列插入另乙個陣列引入的思考

今天在群裡有人丟擲了個問題 如何把 0,1,4 2,3 0,1,2,3,4 首先想到的是查下api有沒有相關的。於是找到了個 splice。splice的用法是 arrayobj.splice start,deletecount,item1 item2 itemn 引數是很多很多的引數,如item1...