密码游戏
时间:2019-11-06
本文章向大家介绍密码游戏,主要包括密码游戏使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
#include<algorithm> #include<iostream> #include<cstring> #include<cstdio> using namespace std; int a[30],b[30]; bool aa[30],bb[30]; int n,m,cnt,dx,dy; int head[50]; int x[100005],y[100005]; bool key; int re[30][30]; long long read(){ long long a=0,b=1; char ch=getchar(); while(ch<'0'||ch>'9'){ ch=getchar(); } if(ch=='-'){ b=-1; ch=getchar(); } while(ch>='0'&&ch<='9'){ a=a*10+ch-'0'; ch=getchar(); } return a*b; } void Print_res(){ for (int i=0;i<m;i++){ printf("%d ",a[i]); } printf("\n"); for (int i=0;i<m;i++){ printf("%d ",b[i]); } } void dfs(int t){ if(t==m){ Print_res(); key=1; return; } for(int k=0;k<m;k++){ if(aa[k]){ continue; } a[t]=k; bool ok=1; bool temp[30]={0}; for(int e=0;e<m;e++){ if(re[t][e]==-1){ continue; } int v=(a[t]+e)%m; int val=re[t][e]; if((b[v]==-1&&bb[val]==0)||b[v]==val); else{ ok=0; break; } } if(ok==0){ continue; } aa[k]=1; for (int e=0;e<m;e++){ if(re[t][e]==-1){ continue; } int v=(a[t]+e)%m; int val=re[t][e]; if(b[v]==-1){ b[v]=val; bb[val]=1; temp[v]=1; } } dfs(t+1); if(key){ return; } for (int i=0;i<m;i++){ if (temp[i]){ bb[b[i]]=0; b[i]=-1; } } aa[k]=0; } } int main(){ freopen("password.in","r",stdin); freopen("password.out","w",stdout); n=read(),m=read(); for(int i=1;i<=n;i++){ x[i]=read(); } for(int i=1;i<=n;i++){ y[i]=read(); } for(int i=0;i<m;i++){ a[i]=b[i]=-1; } memset(re,-1,sizeof(re)); while(cnt<n){ cnt++; re[(x[cnt]+dx)%m][dy]=y[cnt]; dx++; if(dx==m){ dx=0,dy++; } if(dy==m){ dy=0; } } dfs(0); return 0; }
原文地址:https://www.cnblogs.com/xiongchongwen/p/11806070.html
- oracle中的数组(第一篇)(r4笔记第9天)
- org.springframework.expression.spel.SpelEvaluationException: EL1004E: Method call: Method service()
- GITCHAT系列2:个性化推荐
- org.springframework.expression.spel.SpelEvaluationException: EL1011E: Method call: Attempted to call
- 【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
- PaddlePaddle发布新版API,简化深度学习编程
- 13(01)总结StringBuffer,StringBuilder,数组高级,Arrays,Integer,Character
- thymeleaf模板引擎调用java类中的方法(附源码)
- 由hugepage设置导致的数据库事故(r4笔记第28天)
- 判断js引擎是javascriptCore或者v8
- Springboot系列:Springboot与Thymeleaf模板引擎整合基础教程(附源码)
- 同样的sql执行结果不同的原因分析 (r4笔记第27天)
- 情感分析的新方法,使用word2vec对微博文本进行情感分析和分类
- 垂直属性
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- PHP实现数据四舍五入的方法小结【4种方法】
- 如何在Windows中安装多个python解释器
- PHP设计模式之抽象工厂模式实例分析
- 使用python matploblib库绘制准确率,损失率折线图
- Django REST Swagger实现指定api参数
- matplotlib.pyplot.matshow 矩阵可视化实例
- php+mysql开发的最简单在线题库(在线做题系统)完整案例
- python中元组的用法整理
- PHP错误提示It is not safe to rely on the system……的解决方法
- PHP使用mysqli同时执行多条sql查询语句的实例
- 在tensorflow下利用plt画论文中loss,acc等曲线图实例
- PHP生成短网址的思路以及实现方法的详解
- ThinkPHP 3.2.3实现加减乘除图片验证码
- Python数据相关系数矩阵和热力图轻松实现教程
- PHP中md5()函数的用法讲解