[luoguP1013] 进制位(搜索)
纯搜索,无优化!
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 10 using namespace std; int n, m, f;
int c[300], b[N];
string map[N][N]; bool check()
{
int i, j, k, x;
for(i = 1; i < n; i++)
for(j = 1; j < n; j++)
{
x = 0;
for(k = 0; k < map[i][j].length(); k++)
x = x * m + c[map[i][j][k]];
if(x != c[map[0][j][0]] + c[map[i][0][0]]) return 0;
}
return 1;
} inline void dfs(int k)
{
if(k == n)
{
if(check())
{
for(int i = 1; i < n; i++) cout << map[0][i][0] << "=" << c[map[0][i][0]] << " ";
cout << endl << m << endl;
exit(0);
}
}
for(int i = 0; i < m; i++)
if(!b[i])
{
b[i] = 1;
c[map[0][k][0]] = i;
dfs(k + 1);
b[i] = 0;
}
} int main()
{
int i, j;
cin >> n;
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
cin >> map[i][j];
for(m = n - 1; m <= 10; m++)
{
memset(b, 0, sizeof(b));
dfs(1);
}
cout << "ERROR!\n";
return 0;
}
[luoguP1013] 进制位(搜索)的更多相关文章
- [NOIP1999]进制位(搜索)
P1013 进制位 题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: + L K V E L L K V E K K V E KL V V E ...
- 洛谷P1013 进制位
P1013 进制位 题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: + L K V E L L K V E K K V E KL V V E ...
- 洛谷 P1013 进制位
P1013 进制位 题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: + L K V E L L K V E K K V E KL V V E ...
- 【Luogu】P1013进制位(搜索)
题目链接在这里 这题和虫食算比较类似.做完这道题可以去做虫食算.都是搜索一类的题. 这样 我们分析题目可以发现进制只可能是字母的个数,也就是n-1.为什么? 因为题目要求完整的加法表才算数.如果进制低 ...
- 洛谷 P1013 进制位 【搜索 + 进制运算】
题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: + L K V E L L K V E K K V E KL V V E KL KK E E ...
- [NOIP1998] 提高组 洛谷P1013 进制位
题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: L K V E L L K V E K K V E KL V V E KL KK E E K ...
- [洛谷 P1013] NOIP1998 提高组 进制位
问题描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: L K V E L L K V E K K V E KL V V E KL KK E E K ...
- P1013 [NOIP1998 提高组] 进制位
解析 看到这道题时,有没有想到搜索?然后就是一通码......然后过了. 但是,真的要用搜索吗? 我们可以观察一下.对于n进制中的数ii,如果ii加上某一个数jj会变成两位数,那么可以得到如下不等式: ...
- noip 1998 洛谷P1013 进制位
题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字. 例如: L K V E L L K V E K K V E KL V V E KL KK E E K ...
随机推荐
- HttpURLConnection与HTTP Client的区别,及多用前者
转自: http://android-developers.blogspot.jp/2011/09/androids-http-clients.html Level 9以前用client,以后用url ...
- js拿到焦点所在的标签对象
通过 document.activeElement 此时是js对象,如果要调用jQuery的API那么就转换成jquery对象 $(document.activeElement)
- [转]在ubuntu上安装chrome浏览器
原文链接: https://www.linuxidc.com/Linux/2013-10/91857.htm --------------------------------------------- ...
- spark on yarn模式下内存资源管理(笔记2)
1.spark 2.2内存占用计算公式 https://blog.csdn.net/lingbo229/article/details/80914283 2.spark on yarn内存分配** 本 ...
- R Programming week 3-Debugging
Something’s Wrong! Indications that something’s not right message: A generic notification/diagnostic ...
- reStructuredText学习
reStructuredText学习====================2015年4月1日 学习的最好方法就是尽快动手开始.不断迭代,不断完善. reStructuredText学习v0.1版本. ...
- JSP标签 <meta.....>作用总结
<metahttp-equiv="pragma" content="no-cache"> <metahttp-equiv="cach ...
- iTOP-6818开发板-Android4.4系统下RFID射频模块测试例程
平台:迅为iTOP-6818开发板 系统:Android4.4版本 例程:RFID射频模块测试例程 rc522 驱动在 Android 系统的内核是默认集成的,用户可以在开发板上使用命令“ls /de ...
- python中统计计数的几种方法和Counter的介绍
使用字典dict()alist=['a','b','a','c','b','b',1,3]count_dict = dict()for i in alist:count_dict[i]=count_d ...
- ZXing.dll 生成二维码 C# winform net4.5
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...