洛谷 P1555 尴尬的数字
题目背景
Bessie刚刚学会了不同进制数之间的转换,但是她总是犯错误,因为她的两个前蹄不能轻松的握住钢笔。
题目描述
每当Bessie将一个数转换成新的进制时,她总会写错一位数字。例如,她将14转化成2进制数,正确的结果是"1110",但她可能会写成"0110"或"1111"。Bessie从不会意外的增加或删减数字,所以她可能会写出以"0"开头的错误数字。
给出Bessie转换后N的2进制形式和3进制形式,请计算出N的正确数值(用十进制表示)。N可能会达到10亿,输入数据保证解的存在唯一性。
输入输出格式
输入格式:
第一行,N的2进制表示(有一位是错误的数字)
第二行,N的3进制表示(有一位是错误的数字)
输出格式:
N的正确值
输入输出样例
1010
212
14
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int len1,len2;
long long sum1;
char s1[],s2[];
int num1[],num2[];
void dfs(long long num,int tot,int pos){
if(tot==len2){
if(sum1==num){
cout<<sum1;
exit();
}
return ;
}
if(pos) dfs(num+num2[tot]*pow(,tot),tot+,pos);
else{
if(num2[tot]!=&&tot!=len2-) dfs(num,tot+,);
else dfs(num,tot+,pos);
if(num2[tot]!=) dfs(num+pow(,tot),tot+,);
else dfs(num+pow(,tot),tot+,pos);
if(num2[tot]!=) dfs(num+*pow(,tot),tot+,);
else dfs(num+*pow(,tot),tot+,pos);
}
}
int main(){
scanf("%s",s1);scanf("%s",s2);
len1=strlen(s1);
len2=strlen(s2);
if(s1[]==''){
for(int i=;i<len1;i++)
sum1+=pow(,i)*(s1[len1--i]-'');
long long x=pow(,len1-);
cout<<sum1+x;
return ;
}
if(s2[]==''){
for(int i=;i<len2;i++)
sum1+=pow(,i)*(s2[len2--i]-'');
long long x=pow(,len2-);
cout<<sum1+x;
return ;
}
for(int i=;i<len1;i++) num1[i]=s1[len1--i]-'';
for(int i=;i<len2;i++) num2[i]=s2[len2--i]-'';
for(int i=;i<len1;i++) sum1+=pow(,i)*num1[i];
for(int i=;i<len1;i++){
if(num1[i]&&i!=len1-) sum1-=pow(,i);
else sum1+=pow(,i);
dfs(,,);
if(num1[i]&&i!=len1-) sum1+=pow(,i);
else sum1-=pow(,i);
}
}
洛谷 P1555 尴尬的数字的更多相关文章
- [洛谷P3292] [SCOI2016]幸运数字
洛谷题目链接:[SCOI2016]幸运数字 题目描述 A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城 ...
- 洛谷P3868 [TJOI2009]猜数字(中国剩余定理,扩展欧几里德)
洛谷题目传送门 90分WA第二个点的看过来! 简要介绍一下中国剩余定理 中国剩余定理,就是用来求解这样的问题: 假定以下出现数都是自然数,对于一个线性同余方程组(其中\(\forall i,j\in[ ...
- 洛谷P2501 bzoj1049 [HAOI2006]数字序列
题目链接 bzoj 洛谷 题解 第一问: 假如 \(i < j\) 如果 \(j\)能从\(i\)转移过来 显然中间空隙必须足够 例如:\(50\) \(53\) \(53\) \(52\) 就 ...
- bzoj2154||洛谷P1829 Crash的数字表格&&JZPTAB && bzoj3309 DZY Loves Math
bzoj2154||洛谷P1829 https://www.lydsy.com/JudgeOnline/problem.php?id=2154 https://www.luogu.org/proble ...
- 洛谷P3292 [SCOI2016] 幸运数字 [线性基,倍增]
题目传送门 幸运数字 题目描述 A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的 ...
- 洛谷P4331 [BOI2004] Sequence 数字序列 [左偏树]
题目传送门 数字序列 题目描述 给定一个整数序列 a1,a2,⋅⋅⋅,an ,求出一个递增序列 b1<b2<⋅⋅⋅<bn ,使得序列 ai 和 bi 的各项之差的绝对 ...
- 洛谷——P1216 [USACO1.5]数字三角形 Number Triangles
P1216 [USACO1.5]数字三角形 Number Triangles 题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左 ...
- 洛谷 P1216 [USACO1.5]数字三角形 Number Triangles(水题日常)
题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 ...
- 洛谷P1427 小鱼的数字游戏
题目描述 小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字(长度不一定,以0结束,最多不超过100个,数字不超过2^32-1),记住了然后反着念出来(表示结束的数字0就不要念出来了).这对小鱼的 ...
随机推荐
- 1775. [国家集训队2010]小Z的袜子
[题目描述] 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到 ...
- Android 轻松实现语音朗读
语音朗读,这是一个很好的功能,可以实现一些客户的特殊要求.在Android 实现主意功能只需要几段简单的代码即可完成. 在Android 中使用语音朗读功能 只需要使用此类 TextToSpeech ...
- mysql 判断null 和 空字符串
1.在mysql中null 不能使用任何运算符与其他字段或者变量(函数.存储过程)进行运算.若使用运算数据就可能会有问题. 2.对null 的判断: 创建一个user表:id 主健 name 可以为空 ...
- ASP.Net TextBox只读时不能通过后台赋值取值
给页面的TextBox设置ReadOnly="True"时,在后台代码中不能赋值取值,下边几种方法可以避免: 1.不设置ReadOnly,设置onfocus=this.blur() ...
- MYSQL 查询方法 统计查询 链接查询 子查询
mysql表格查询方法: 查询: 1.简单查询 select * from Info --查所有数据select Code,Name from Info --查指定列的数据select Code as ...
- CentOS 6.4 php-fpm 添加service 添加平滑启动/重启
nginx通过FastCGI运行PHP比Apache包含PHP环境有明显的优势,最近有消息称,PHP5.4将很有可能把PHP-FPM补丁包含在内核里,nginx服务器平台上运行PHP将更加轻松,下面我 ...
- 浮动qq客服备份代码
<div class="main-im"> <div id="open_im" class="open-im"> & ...
- python游戏开发:pygame中的IO、数据
一.python输入输出 1.输出 python一次可以打印多个变量,只要用一个逗号将每个变量隔开就可以了.比如: A = 123B = "ABC"C = 456D = " ...
- scrapy增加爬取效率
增加并发: 默认scrapy开启的并发线程为32个,可以适当进行增加.在settings配置文件中修改CONCURRENT_REQUESTS = 100值为100,并发设置成了为100. 降低日志级别 ...
- 使用webpack+vue.js构建前端工程化
参考文章:https://blog.csdn.net/qq_40208605/article/details/80661572 使用webpack+vue.js构建前端工程化本篇主要介绍三块知识点: ...