前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何轻快地找到男(女)盆友

如何轻快地找到男(女)盆友

作者头像
用户9831583
发布2022-06-16 14:05:06
1670
发布2022-06-16 14:05:06
举报
文章被收录于专栏:码出名企路

你还在为心中的那个她发愁嘛?

你还在被父母逼着相亲嘛?

你还在怀疑她心理已有那个他嘛?

你还在苦苦追求嘛?

教你一招,保证找到满意的她!

还能发现你的她心里有没有他!

#include "iostream"

using namespace std;

bool finish_or_not(int, int*);

bool current_male_is_better(int num, int* male_rank_in_female, int current, int chasing);

int main()

{

int num = 5;

int female_rank_in_male[5][5] = { {2,1,4,5,3},{4,2,1,3,5},

{2,5,3,4,1},{1,4,3,2,5},{2,4,1,5,3} };

int male_rank_in_female[5][5] = { { 5,1,2,4,3 },{ 3,2,4,1,5 },

{ 2,3,4,5,1},{1,5,4,2,3},{ 24,2,5,3,1} };

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

{

cout << "男生 " << i << "心目中妹子排行:";

for (int j = 0; j < num; j++)

{

cout << female_rank_in_male[i][j] << " ";

}

cout << endl;

}

cout << endl;

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

{

cout << "女生 " << i << "心目中男生排行:";

for (int j = 0; j < num; j++)

{

cout << male_rank_in_female[i][j] << " ";

}

cout << endl;

}

//男生和妹子正在约会的对象

int *date_of_male = new int[num];

int *date_of_female = new int[num];

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

{

date_of_male[i] = 0;

date_of_female[i] = 0;

}

//男生追求过妹子的数量

int *num_of_chased_female = new int[num];

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

{

num_of_chased_female = 0;

}

do {//如果男生没有对象

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

{//按序号遍历所有男生

cout << endl << "正在查看男生 " << i + 1 <<

"有没有对象 " << endl;

if (date_of_male[i] == 0)

//如果男生没有对象

{

cout << "男生 " << i + 1 << "没有对象!" << endl;

//该男生准备追妹子该男生优先表中还没追求过排名最高的妹子

int female_to_chase = female_rank_in_male[i][num_of_chased_female[i]];

//男生准备追的妹子现任

int date_of_female_to_chase = date_of_female[female_to_chase - 1];

cout << "男生 " << i + 1 << "准备追的妹子 " << female_to_chase;

if (date_of_female_to_chase != 0)

{

cout << ",妹子的现任是 " << date_of_female_to_chase << endl;

}

else

{

cout << ",妹子目前是单身的呢 " << endl;

}

if (date_of_female_to_chase == 0)

{

//如果该男生准备追的妹子没有现任

date_of_male[i] = female_to_chase;

//该男生的对象变成准备追的妹子

date_of_female[female_to_chase - 1] = i + 1;

//男生准备追求的妹子的对象变成该男生

cout << "这样子的话,男生 " << i + 1 << " 和妹子" <<

female_to_chase << "在一起了!" << endl;

}

else if (current_male_is_better(num, male_rank_in_female[female_to_chase - 1], date_of_female_to_chase, i + 1))

{

//如果该男生准备追的妹子没现任在妹子心中比男生好,则什么也不做

cout << "所有,男生 " << i + 1 << " 被妹子 " << female_to_chase

<< "拒绝了!" << endl;

}

else

{

//如果该男生准备追的妹子比现任在妹子心中比男生好

date_of_male[date_of_female_to_chase - 1] = 0;

//该男生准备追的妹子回到单身状态

date_of_male[i] = female_to_chase;

//该男生的对象变成准备追的妹子

date_of_female[female_to_chase - 1] = i + 1;

//该男生准备追的妹子变成该男生

cout << "所有,男生 " << i + 1 << " 和妹子 " << female_to_chase << "在一起了!" << endl;

cout << "与此同时,不幸的是,男生 " << date_of_female_to_chase << " 变成单身狗了! " << endl;

}

num_of_chased_female[i]++;

//该男生追的的妹子数量加1

}

else

{

cout << "该男生已经跟妹子 " << date_of_male[i] << "在一起了。下一个吧 " << endl;

}

}

} while (finish_or_not(num, date_of_male) == false);

//最后输出

cout << "| |" << endl;

cout << "--------------------------" << endl;

delete[ ] date_of_male;

delete[ ] date_of_female;

delete[ ] num_of_chased_female;

system("pause");

return 0;

}

bool finish_or_not(int num, int* date_of_male)

{

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

{

if (date_of_male[i] == 0)

{

cout << "还有单身狗 再来" << endl;

return false;

}

}

cout << endl << " 已经全部脱离单身狗 !!!" << endl;

return true;

}

bool current_male_is_better(int num, int *male_rank_in_female,

int current, int chasing)

{

int rank_of_current, rank_of_chasing;

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

{

if (male_rank_in_female[i] == current)

{

rank_of_current = i;

}

if (male_rank_in_female[i] == chasing)

{

rank_of_chasing = i;

}

}

cout << "在妹子心中现任排名是 " << rank_of_current <<

" ,而追求者排名是 " << rank_of_chasing << endl;

if (rank_of_current < rank_of_chasing)

return true;

else

return false;

}

现在你应该离她近了吧

别打我,

别打我,

别打我,

哇哇哇

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码出名企路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档