SGU 264 Travel(穩定婚姻匹配)

2021-09-08 14:24:46 字數 1731 閱讀 1924

題意:穩定婚姻匹配。

思路:對於每個男的依次從自己最喜歡的女的開始求婚若女的還沒有被匹配或者女的之前匹配的不如這個好,女的會放棄之前的而選擇這個。迴圈這個過程直到全部匹配完。

#include #include #include #include #include #include #include #include #include #include #include #define max(x,y) ((x)>(y)?(x):(y))

#define min(x,y) ((x)<(y)?(x):(y))

#define abs(x) ((x)>=0?(x):-(x))

#define i64 long long

#define u32 unsigned int

#define u64 unsigned long long

#define clr(x,y) memset(x,y,sizeof(x))

#define clr(x) x.clear()

#define ph(x) push(x)

#define pb(x) push_back(x)

#define len(x) x.length()

#define sz(x) x.size()

#define pi acos(-1.0)

#define sqr(x) ((x)*(x))

#define for0(i,x) for(i=0;i=0;i--)

#define dow1(i,x) for(i=x;i>=1;i--)

#define dow(i,a,b) for(i=a;i>=b;i--)

using namespace std;

void rd(int &x)

void rd(i64 &x)

void rd(u32 &x)

void rd(double &x)

void rd(int &x,int &y)

void rd(i64 &x,i64 &y)

void rd(u32 &x,u32 &y)

void rd(double &x,double &y)

void rd(int &x,int &y,int &z)

void rd(i64 &x,i64 &y,i64 &z)

void rd(u32 &x,u32 &y,u32 &z)

void rd(double &x,double &y,double &z)

void rd(char &x)

void rd(char *s)

void rd(string &s)

void pr(int x)

void pr(i64 x)

void pr(u32 x)

void pr(u64 x)

void pr(double x)

void pr(char x)

void pr(char *x)

void pr(string x)

else y=(*it).second;

b[x][j]=y;}}

for(i=1;i<=n;i++)

}}void deal()

else if(a[y][x]n) q.push(x);

}}void print()

{ puts("yes");

int i;

for(i=1;i<=n;i++)

{cout<

sgu 264 Travel 穩定婚姻問題

男女配對,最後沒有一對男女對對方的喜歡程度都高於現在的配偶 感覺和二分圖差不多嘛。所有男的放佇列 乙個個出來,先找最喜歡的,要是她單身就結婚 不單身就問她要不要私奔 私奔了原來配的就又單身 放入佇列 include include include include include include us...

T264中記憶體的使用

t264中記憶體的使用 lipku pku.t264 open 中分配所有記憶體。這裡著重解釋一下參考幀序列的記憶體分配。其 段如下 uint8 t p t264 malloc t edged width t edged height t edged width t edged height 1 c...