uva1262
- /* 解码 _________________________________________________________________________________
- #include <iostream>
- #include <map>
- #include <cmath>
- #include <vector>
- #include <cstdio>
- #include <string>
- #include <cstring>
- #include <algorithm>
- using namespace std;
- #define fir first
- #define sec second
- #define pb(x) push_back(x)
- #define mem(A, X) memset(A, X, sizeof A)
- #define REP(i,l,u) for(int (i)=(int)(l);(i)<=(int)(u);++(i))
- #define rep(i,l,u) for(int (i)=(int)(l);(i)>=(int)(u);--(i))
- #define foreach(e,x) for(__typeof(x.begin()) e=x.begin();e!=x.end();++e)
- typedef long long LL;
- typedef unsigned long long ull;
- typedef pair<long,long> pll;
- LL T,n;
- int k;
- const int mod=1e9+7;
- const int maxn=1e5+10;
- char s[2][6][10],ans[10];
- int cnt;
- bool dfs(int col)
- {
- if(col==5)
- {
- if(++cnt==k)
- {
- ans[5]='\0';
- printf("%s\n",ans);
- return true;
- }
- else
- return false;
- }
- else
- {
- bool vis[2][26];
- mem(vis,false);
- REP(i,0,1)
- REP(j,0,5)
- vis[i][ s[i][j][col]-'A' ]=true; //只处理当前列对应的可能位置,搜索时只处理当前层。
- REP(j,0,25)
- if(vis[0][j]==true && vis[1][j]==true)
- {
- ans[col]=j+'A';
- if( dfs(col+1) ) return true;
- }
- }
- return false;
- }
- int main()
- {
- freopen("in.txt","r",stdin);
- //while(cin>>n)
- while(scanf("%d",&T)!=EOF)
- {
- REP(kase,1,T)
- {
- scanf("%d",&k);
- REP(i,0,1)
- REP(j,0,5)
- {
- scanf("%s",&s[i][j]);
- //printf("%s\n",s[i][j]);
- }
- cnt=0;
- if(!dfs(0)) puts("NO");
- }
- }
- return 0;
- }
- /*
- note : 编码理论
- 本题运用的暴力方法,编写简单,
- 如果用直接构造性的编码,实现时要注意更多的细节。
- debug :
- optimize:
- 直接操纵输入的字符,减少中间的传递,简化过程。
- 二维的数组字母表,处理多个相似的对象时进行优化。
- */
uva1262的更多相关文章
- 10-8 uva1262密码
题意:有两个图,每一列都存在的字母选作密码,就第k大的密码 思路: 找出各个位置上的密码, 假设: 第1个字母只能是{A,C,D,W}, 第2个字母只能是{B,O,P}, 第3个字母只能是{G,M,O ...
- UVA 1262 Password
https://vjudge.net/problem/UVA-1262 字典序第k小 注意两点: 1. k-- 2.去重 #include<cstring> #include<cst ...
- UVA 1262 Password 暴力枚举
Password Time Limit: 3000ms Memory Limit: 131072KB This problem will be judged on UVA. Original ID: ...
随机推荐
- JavaScript之全局变量和隐式全局变量
通过var创建的全局变量(任何函数之外的程序中创建)是不能被删除的. 无var创建的隐式全局变量(无视是否在函数中创建)是能被删除的.
- Hadoop:输入,输出,key,value格式
map: (K1, V1) → list(K2, V2) reduce: (K2, list(V2)) → list(K3, V3) (K1, V1): jobConf.setInputKeyClas ...
- Beagleboard xm sd卡恢复
来源于:http://circuitco.com/support/index.php?title=BeagleBoard-xM windows下恢复更加简单,推荐windows系统下恢复. To in ...
- Spearman秩相关系数和Pearson皮尔森相关系数
1.Pearson皮尔森相关系数 皮尔森相关系数也叫皮尔森积差相关系数,用来反映两个变量之间相似程度的统计量.或者说用来表示两个向量的相似度. 皮尔森相关系数计算公式如下:
- 《Java应用程序(Application)》
在编写Java应用程序(Application)时可以这样: 1,定义包名. 2, 导入相关的包. 3, 定义一个类. 4,定义相关变量. 5,定义构造函数.(在构造函数内调用init()方法和add ...
- 第六篇——初尝Python,意犹未尽
作业2的要求是选一个你从来没有学过的编程语言,试一试实现基本功能.那么在这里我准备学习Python语言进行学习,并尝试用Python写一写东西. http://www.runoob.com/ Pyth ...
- 一步一步搭框架(asp.netmvc+easyui+sqlserver)-03
一步一步搭框架(asp.netmvc+easyui+sqlserver)-03 我们期望简洁的后台代码,如下: using System; using System.Collections.Gener ...
- Tabbed Activity的使用(Fragment)
1,首先file -> new -> Activity -> Tabbed Activity 2,创建完成后,发现会自动的创建一大堆代码,大部分我们是不需要关心的,关于页面切换的代码 ...
- 从UWP到SWIFT-开始
hi,all 我呢,是一个win10 uwp的开发者,从wp7.wp8.wp8.1.win8.1 到现在的win10,一直在windows阵营,做过一些大家比较熟悉的东西现在也还是在做win10的uw ...
- Django01
1.创建django project 2.创建app 在一个project下可以创建多个app,比如运维系统这个project下面包含监控app.cmdb app等等,这些app共享project里的 ...