题目描述

• 有一个神秘的常数 K ,s 位
• 现在有 n 个 s 位数,告诉你每个数与 K 有多少位是相同的
• 判断 K 的无解、多解、唯一解,并求出唯一解(如果存在的话)
• 所有出现的数都允许前导零
• s ≤ 9, n ≤ 50

输入格式
第一行两个数 n, s 。
接下来 n 行,每行两个数 a, b 表示 s 位数 a 与 K 有 b 位是相同的。

输出格式
无解输出 Liar , 多解输出 Ambiguity ,唯一解则输出唯一解。

cute gql教我的70分做法:

  从低位搜到高位(倒过来也可以啊) 边搜边判断  然后 没了

这样子做的代码也敲一下了啦 (其实应该比70还多)

 #include<iostream>
#include<cstdio>
#define go(i,u,v) for(register int i=u;i<=v;i++)
#define goo(i,u,v) for(register int i=u;i>=v;i--)
using namespace std;
int read()
{
int x=,y=;char c=getchar();
while(c<''||c>'') {if(c=='-') y=-;c=getchar();}
while(c>=''&&c<='') {x=(x<<)+(x<<)+c-'';c=getchar();}
return x*y;
}
int n,m,a[],b[],c[][],ans,d[],now[],as[];
bool ck() {go(i,,n) if(d[i]!=b[i]) return ; return ;}
void dfs(int nw)
{
if(nw>m) {if(ck()) {ans++;go(i,,m) as[i]=now[i];}return ;}
go(i,,) {
bool fg=;
go(j,,n) { if(c[j][nw]==i&&d[j]+>b[j]) {fg=;break ;} }
if(!fg) continue ;
go(j,,n) { if(c[j][nw]==i) d[j]++; }
now[nw]=i;dfs(nw+);
go(j,,n) { if(c[j][nw]==i) d[j]--; }
}
}
int main()
{
n=read();m=read();
go(i,,n) a[i]=read(),b[i]=read();
go(i,,n) go(j,,m) {c[i][j]=a[i]%;a[i]/=;}
dfs();
if(!ans) puts("Liar");
else if(ans>) puts("Ambiguity");
else { goo(i,m,) printf("%d",as[i]);}
return ;
}

正解:

  很像 方程的解数

  都是直接搜索会TLE 于是就对半 分开搜索 然后来匹配

 

  代码 ……还没有写出来qwq

TC-572-D1L2 未完!待续!的更多相关文章

  1. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

  2. ASP.NET MVC 系列随笔汇总[未完待续……]

    ASP.NET MVC 系列随笔汇总[未完待续……] 为了方便大家浏览所以整理一下,有的系列篇幅中不是很全面以后会慢慢的补全的. 学前篇之: ASP.NET MVC学前篇之扩展方法.链式编程 ASP. ...

  3. 关于DOM的一些总结(未完待续......)

    DOM 实例1:购物车实例(数量,小计和总计的变化) 这里主要是如何获取页面元素的节点: document.getElementById("...") cocument.query ...

  4. 我的SQL总结---未完待续

    我的SQL总结---未完待续 版权声明:本文为博主原创文章,未经博主允许不得转载. 总结: 主要的SQL 语句: 数据操作(select, insert, delete, update) 访问控制(g ...

  5. virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)

    virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...

  6. MVC丶 (未完待续······)

         希望你看了此小随 可以实现自己的MVC框架     也祝所有的程序员身体健康一切安好                                                     ...

  7. 一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

  8. [python]爬代理ip v2.0(未完待续)

    爬代理ip 所有的代码都放到了我的github上面, HTTP代理常识 HTTP代理按匿名度可分为透明代理.匿名代理和高度匿名代理. 特别感谢:勤奋的小孩 在评论中指出我文章中的错误. REMOTE_ ...

  9. IOS之KVC和KVO(未完待续)

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  10. C++语言体系设计哲学的一些随想(未完待续)

    对于静态类型语言,其本质目标在于恰当地操作数据,得到期望的值.具体而言,需要: (1)定义数据类型 你定义的数据是什么,是整形还是浮点还是字符.该类型的数据可以包含的值的范围是什么. (2)定义操作的 ...

随机推荐

  1. hdu 4686 Arc of Dream(矩阵快速幂)

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=4686 题意: 其中a0 = A0ai = ai-1*AX+AYb0 = B0bi = bi-1*BX+BY ...

  2. Linux文件属性和权限管理

    Linux系统为多用户系统,分为三种不同类型的用户: 1. 所有者(User): 文件的拥有者,即创建文件的用户. 2. 同组用户(Group): 与所有者同一组的用户. 3. 其他用户(Others ...

  3. [BZOJ4820]硬币游戏 KMP+高斯消元

    4820: [Sdoi2017]硬币游戏 Time Limit: 10 Sec  Memory Limit: 128 MB Description 周末同学们非常无聊,有人提议,咱们扔硬币玩吧,谁扔的 ...

  4. c++11 继承控制:final和override

    c++11 继承控制:final和override #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <str ...

  5. c++11 标准库函数 std::move 和 完美转发 std::forward

    c++11 标准库函数 std::move 和 完美转发 std::forward #define _CRT_SECURE_NO_WARNINGS #include <iostream> ...

  6. 【BZOJ4820】【SDOI2017】硬币游戏

    Description Solution 设当前走出了一个不匹配任何字符串的串\(S\). ​ 若在\(S\)后随机增添\(m\)个字符,单看这些字符而言,这\(m\)个字符匹配到每个玩家的字符串的概 ...

  7. linux内核分析 第八周读书笔记

    第四章 进程调度 4.1 多任务 1.多任务操作系统就是能同时并发的交互执行多个进程的操作系统. 2.多任务操作系统使多个进程处于堵塞或者睡眠状态,实际不被投入执行,这些任务尽管位于内存,但是并不处于 ...

  8. Java中的三目运算符可能出现的问题

    你真的了解Java中的三目运算符吗? 原创 2018-04-27 刨根问底的 Hollis Hollis Hollis 微信号 hollischuang 功能介绍 一个对Coding有着独特追求的人. ...

  9. Java List /ArrayList 三种遍历方法

    java list三种遍历方法性能比较http://www.cnblogs.com/riskyer/p/3320357.html JAVA LIST 遍历http://blog.csdn.net/lo ...

  10. MySQL基本了解与使用

    MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格 ...