简单介绍

世界杯小组赛共8组,每组4个参赛队伍。 每组中两两队伍间比赛一场,赢积3分,输不积分,平各积1分。
每小组间队伍进项6场比赛,总积分位居小组前两位,获得进入淘汰赛的名额。(如果存在积分相同的情况,净进球数目多的队伍,名次排在前面)
在小组中,每场比赛均有三种可能(赢、平、输),所有可能结果有6^3 = 729种可能
计算出所有可能,放到结果集中,经去重后输出结果

代码

# include <iostream>
# include <vector>
# include <set>
# include <algorithm>
# include <fstream>
using namespace std;int match[6] = {01, 02, 03, 12, 13, 23};   // 代表比赛队伍, 01表示0和1队伍踢vector<int> g(4, 0);      // 得分vector<int> tmp(4, 0);       // 辅助数组,用于排序vector<vector<int>> ans; // 存放所有比分结果ofstream ofs("./123.txt"); // 输出文件对象// 回溯法
void backtracking(int n){if(n == 6){copy(g.begin(), g.end(), tmp.begin());sort(tmp.rbegin(), tmp.rend());ans.push_back(tmp);return;}// playerint p1 = match[n] / 10;int p2 = match[n] % 10;g[p1] += 3;                // p1胜backtracking(n+1);g[p1] -= 3;g[p1] += 1;              // 平局g[p2] += 1;backtracking(n+1);g[p1] -= 1;g[p2] -= 1;g[p2] += 3;              // p2胜backtracking(n+1);g[p2] -= 3;
}int main()
{if(ofs.is_open() == false){return 0;}backtracking(0);// 结果集去重set<vector<int>> s(ans.begin(), ans.end());ans.assign(s.begin(), s.end());// 输出结果到终端和文件中for(unsigned int i = 0; i < ans.size(); ++i){cout << ans[i][0] << ' ' << ans[i][1]  << ' ' << ans[i][2] << ' ' << ans[i][3] << endl;ofs << ans[i][0] << ' ' << ans[i][1]  << ' ' << ans[i][2] << ' ' << ans[i][3] << endl;}ofs.close();return 0;
} 

输出结果

3 3 3 3
4 4 4 3
4 4 4 4
5 3 3 2
5 4 3 2
5 4 4 2
5 4 4 3
5 5 2 2
5 5 3 1
5 5 3 2
5 5 4 1
5 5 5 0
6 4 4 2
6 4 4 3
6 5 2 2
6 5 4 1
6 6 3 3
6 6 4 1
6 6 6 0
7 3 2 2
7 4 2 2
7 4 3 1
7 4 3 2
7 4 3 3
7 4 4 1
7 5 2 1
7 5 3 1
7 5 4 0
7 6 2 1
7 6 3 1
7 6 4 0
7 7 1 1
7 7 3 0
9 2 2 2
9 3 3 3
9 4 2 1
9 4 3 1
9 4 4 0
9 6 1 1
9 6 3 0

世界杯小组赛积分的所有可能相关推荐

  1. 2022卡塔尔世界杯小组赛出线形势分析指南——德国队会被西班牙做掉吗?

    早点关注我,精彩不错过! (德国队出现形势分析在文末,可直接跳转.) 北京时间今天晚上11点整,如火如荼的卡塔尔世界杯就将展开小组赛第三轮比赛的争夺,8个小组轮番同时进行最后一轮较量,以决定出线权,以 ...

  2. 世界杯小组赛频繁爆冷?这或许是强队的谋略 一分钟带你了解2022卡塔尔世界杯赛制

    今年的世界杯你赚到钱了吗? 我们这里所说的世界杯是指世界杯决赛圈,也被叫做世界杯正赛.参赛队伍是已经通过世界杯预选赛选拔出的的32支队伍(除了东道主卡塔尔自动晋级). 世界杯中没有皇马.巴萨.曼联,这 ...

  3. C语言解决世界杯小组赛问题

    C语言解决世界杯小组赛问题 题目: 世界杯小组赛(胜得3分,平得1分,负不得分),计算每个队的积分并按排名先后输出,若积分相同,则按净球数排序(保证积分相等时输入的净球数不相等).输入M个队,出线队N ...

  4. 炒股开户第二证券|本届世界杯小组赛首轮 亚足联6支球队2胜1平3负

    北京时间11月25日凌晨,2022年卡塔尔世界杯完毕小组赛首轮的抢夺.亚足联6支球队获得2胜1平3负,拿到7个积分,创下亚足联球队在世界杯小组赛首轮的前史最佳成果.此前在2010年南非世界杯和2018 ...

  5. 2006年世界杯小组赛日程表

    2006年世界杯小组赛日程表 业余爱好,现在这里记录一下,以便查阅 赛程-时间 赛程-小组赛 赛程-淘汰赛 场序 日期 时间 地点 A组对阵 1 6月10日 00:00 慕尼黑 德国-哥斯达黎加 2 ...

  6. 2分能出线,6分却不能出线?世界杯小组赛的出线规则这次真被我整明白了

    写在前面 这个月世界杯正是进行得火热,我这样的十几年的老球迷自然是场场不落,周边不少不看球的朋友甚至连我那一场比赛上多少人都弄不明白的老婆也能说上几句:"听说梅西输了?",&quo ...

  7. 南非世界杯 小组赛 巴西vs朝鲜

    巴西2:1朝鲜 连看两场无聊的小组赛,巴西又没有了大罗,里瓦,本来这场深夜2:30的比赛还有一些小犹豫要不要看.最后想到以后估计看不到大罗踢球了,难道就此不看球了,怕也是不可能的,于是还是看了. 巴西 ...

  8. 2014巴西世界杯小组赛赛程

    A组 比赛日期                         时间                     对阵            组别           比赛地                ...

  9. 南非世界杯 小组赛 荷兰vs日本

    荷兰1:0日本 这场和英格兰的那场一样很无聊. 这届世界杯怎么没有什么精彩比赛啊.

最新文章

  1. U盘安装Ubuntu14.4时遇到分区问题记录
  2. 有符号类型的最小负数的补码的由来
  3. o型圈沟槽设计软件_O型圈的设计注意事项
  4. 【转】IT名企面试:腾讯笔试题(2)
  5. poj 1041(欧拉回路+输出字典序最小路径)
  6. 2018程序员最佳ssh免费登陆工具
  7. 作者:宋璇(1993-),女,食品安全大数据技术北京市重点实验室、北京工商大学计算机与信息工程学院硕士生...
  8. 又发现一款牛逼的 API 敏捷开发工具
  9. 中科同向 备份软件 引领科技 存储未来
  10. 什么是std :: move(),什么时候应该使用?
  11. 数据脱敏和加密_数据脱敏和数据加密的区别--工作需要,对其进行了简单的整理...
  12. 如果同时需要两张表,但其中一个表中没有另一个表中的字段,该如何正确使用
  13. 电气工程学计算机有用吗,我是学计算机的,因为一直喜欢电气,所以想考个注..._电气工程师_帮考网...
  14. vue引入百度离线地图
  15. 机器学习基础:概率论基础
  16. ubuntu查看电脑配置信息
  17. scp在命令行中带密码远程拷贝文件
  18. Mac OS 下的Vim使用系统剪切板
  19. 微信开发者工具下载及调试
  20. 谭浩强《C程序设计》书后习题 第八章

热门文章

  1. Postfix + Extmail 企业邮件服务器搭建
  2. android 拨号上网流程
  3. Win10家庭版账户名变更方法
  4. 关于MFC的一些疑问
  5. OPENGL读取OBJ模型(包围盒、法向等计算)附加源码与资源下载页面
  6. thinkpad X61风扇控制
  7. JUCE的UI详解(Slider篇)
  8. Unity Shader入门精要学习笔记 - 第7章 基础纹理
  9. win10磁贴自定义_如何在Windows 10开始菜单上添加,删除和自定义磁贴
  10. 国外信号与系统经典书籍收藏