ZOJ 3300 Mahjong DFS暴力解决。。
ZJU 3300: 题目描述
#include<stdio.h>
#include<string.h>
int p[12],flag;
int dfs(int x ,int y ){int i;if(flag) //找到了要的数字直接返回return 1;if(x==4&&y==1) {flag=1; return 1;}for(i=1;i<=9;i++){if(p[i]>=3){ // 三个相同的牌p[i]=p[i]-3;dfs(x+1,y);p[i]=p[i]+3;}if(p[i]>=2) { //两个相同的牌 p[i]=p[i]-2;dfs(x,y+1);p[i]=p[i]+2;}if(p[i]>=1&&p[i+1]>=1&&p[i+2]>=1) { //三个连牌p[i]-=1,p[i+1]-=1,p[i+2]-=1;dfs(x+1,y);p[i]+=1,p[i+1]+=1,p[i+2]+=1;}}return 0;
}
int main()
{int i,n;while(scanf("%d",&n)!=EOF){flag=0;int count=1;memset(p,0,sizeof(p));p[n]++;for(i=0;i<12;i++){scanf("%d",&n);p[n]++;}for(i=1;i<=9;i++){if(p[i]<=3)p[i]++;else continue;dfs(0,0);if(count&&flag){ //格式注意printf("%d",i);flag=0;count=0;}if(flag){printf("% d",i);flag=0;}p[i]--; //回溯}printf("\n");}return 0;
}
转载于:https://www.cnblogs.com/kewowlo/p/4002527.html
ZOJ 3300 Mahjong DFS暴力解决。。相关推荐
- 仙人掌相关问题的解法(1)-DFS树解决仙人掌DP问题,圆方树
前言 有难度的仙人掌题在近几年也只是在国家集训队水平的比赛里才会出现. 不过,这不是说仙人掌对国集水平以下的选手意义不大: 首先,仙人掌暴力 DP 问题难度并不大,在省选. NOI 甚至 NOIP 中 ...
- IDEA——找不到或无法加载主类的一种暴力解决方法
IDEA--找不到或无法加载主类的一种暴力解决方法 参考文章: (1)IDEA--找不到或无法加载主类的一种暴力解决方法 (2)https://www.cnblogs.com/jsjliyang/p/ ...
- mysql deadlock found when trying to get lock暴力解决
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_38383877/arti ...
- Codeforces9C dfs暴力
一道水题,dfs暴力就行. #include <stdio.h>int ans = 0, num; void dfs(int n) {if(n > num)return;dfs(n ...
- DFS算法解决数独问题
DFS算法解决数独问题 一,情景描述 一天晚自习,看到女朋友在旁边玩数独,便想着不如用个算法帮助她快速通关.毕竟,我想以后能成为一个AI算法工程师,所以现在不管是什么算法,多写点总归是有好处的. ...
- C-木棍游戏 DFS暴力
题目链接:C-木棍游戏_牛客小白月赛43 (nowcoder.com) #include<algorithm> #include<cstdio> #include<cst ...
- 简单暴力解决navicat中文字符集乱码问题
简单暴力解决navicat中文字符集乱码问题 最新遇到了一个小问题,也是比较普遍繁琐的问题,在navicat和MySQL建立连接之后,出现了中文字符集乱码的问题 这里不截图说明问题了 既然简单粗暴就直 ...
- nssl1321,jzoj(初中)2106-买门票【dfs,暴力,字符串】
正题 题目大意 给定一些字母,用字母组成一个单词要求满足 从小到大 有1个元音字母 有2个辅音字母 长度为LLL 输出字典序最小的250002500025000个. 解题思路 暴力搜索时间复杂度 O( ...
- 龙曲线 [分形] 从 DFS暴力 到 规律 实现
龙曲线 龙曲线是以简单的数学规则画出一种曲线,它具有以下形态.曲线从一个简单的线段起始,按照一定规则变换此线段完成整个曲线.每形成一次变换称为"完成了一次变换代",而每完成一代,曲 ...
最新文章
- Web 服务器 之 简易WWW服务器的架设
- java 1.7 新io 实践 NIO2
- Redis requires a monkey patched socket library to work with gevent
- Unity 中的协同程序
- java代码输出伞_在伞中集成测试Web应用程序的问题
- DCMTK:函数dcmGenerateUniqueIdentifier的测试程序
- 未来两年内的九大信息安全威胁(三)
- C和指针之字符串memcpy、memmove、memset使用总结
- java 两个数组交叉_java – 如何交叉两个没有重复的排序整数数组?
- How Setting Show Transaction Code on SAP Tree Menu Side.
- python对文件操作实例_Python对文件文件夹的操作实例
- VSCode 如何修改字体
- C语言中getch()的用法
- C4D导入外面下载的模型,渲染颜色有问题。渲染颜色断边
- redis的高级教程
- 深信服校园招聘c/c++软件开发A卷
- 【IDEA】快捷重写equals方法
- StringWriter介绍
- 新建Maven工程乱七八糟全都失效了
- linux动态库注册函数,linux下加载动态库函数
热门文章
- ES6~ES12——Array Includes、Object values、Object entries、Object fromEntries、flat、flatMap、空值合并运算符、可选链等
- LeetCode 2097. 合法重新排列数对(欧拉路径)
- LeetCode 2087. 网格图中机器人回家的最小代价(脑筋急转弯)
- 使用CNN进行情感分类
- [Kaggle] Digit Recognizer 手写数字识别(卷积神经网络)
- LeetCode 392. 判断子序列(双指针二分查找)
- python文件流读取二进制_Python使用web.py从POST请求中提取二进制文件
- listrecord根据某个属性去重_去哪网开发实战记录(9):城市选择页(中)
- java分治法求数列的最大子段和_Java十大经典排序算法动画解析和 代码实现
- python3之批量修改文件名称