XiaoMing likes mathematics, and heis just learning how to convert numbers between different

bases , but he keeps making errorssince he is only 6 years old. Whenever XiaoMing converts a

number to a new base and writes downthe result, he always writes one of the digits wrong.

For example , if he converts thenumber 14 into binary (i.e., base 2), the correct result should be

"1110", but he mightinstead write down "0110" or "1111". XiaoMing neveraccidentally adds or

deletes digits, so he might writedown a number with a leading digit of " 0" if this is the digit she

gets wrong.

Given XiaoMing 's output whenconverting a number N into base 2 and base 3, please determine

the correct original value of N (inbase 10). (N<=10^10)

You can assume N is at most 1billion, and that there is a unique solution for N.

Input

The first line of the input containsone integers T, which is the nember of test cases (1<=T<=8)

Each test case specifies:

* Line 1: The base-2 representationof N , with one digit written incorrectly.

* Line 2: The base-3 representationof N , with one digit written incorrectly.

Output

For each test case generate a singleline containing a single integer ,  the correct value of N

Sample Input

1 1010 212

Sample Output

14

题意多实例,然后每个样例给两行字符串分别是2进制的和3进制的,表示的是同一个十进制数。但是每个串都是有一个数是错的,让你通过这两个错的来找出呢个正确的十进制数。暴力找出所有情况的十进制数,然后一一对比相等说明这个十进制数就是正确的要求的数。

具体看代码,不算太难只不过中间一些小细节特别需要注意:

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<time.h>
#include<iostream>
#include<ctype.h>
#include<map>
#include<set>
#include<string>
#include<vector>
#include<algorithm>
#include<stdlib.h>
#include<queue>
#include<stack>
using namespace std;
int a[];
int b[];
char s[];
char s0[];
int h=,k=,len1,len2;
int f(int t)//将2进制转换为十进制存起来
{
int i;
int sum=;
for(i=; i<=len1; i++)//主意为什么此处是小于等于,main函数有解释
{
sum+=pow(,t)*(s[i]-'');
t--;
}
a[k++]=sum;
}
int ff(int t)//将3进制转换为十进制存起来
{
int i,sum=;
for(i=; i<=len2; i++)
{
sum+=pow(,t)*(s0[i]-'');
t--;
}
b[h++]=sum;
}
int main()
{
int t;
char cc,cc2;
int i,j;
scanf("%d",&t); while(t--)
{
//getchar(); scanf("%s",s);
scanf("%s",s0);
len1=strlen(s)-;//这个地方本来想着减不减无所谓,循环的时候控制一下就行
len2=strlen(s0)-;//但是试了好几次,只有用这个,然后循环变成<=才能出数据,可能因为用char的话最后一位会自动赋值一个\0表示结束吧,然后中间运行会莫名出现问题,具体啥问题我也不清楚,但是很神奇,计算到前一位就过了
h=;
k=;
for(i=; i<=len1; i++)//列举2进制串所有可能情况
{
cc=s[i];
if(s[i]=='')
s[i]='';
else
s[i]='';
f(len1);
s[i]=cc;
}
for(i=; i<=len2; i++)//列举3进制串所有可能情况
{
cc2=s0[i];
if(s0[i]=='')
{
s0[i]='';
ff(len2);
s0[i]='';
ff(len2);
}
else if(s0[i]=='')
{
s0[i]='';
ff(len2);
s0[i]='';
ff(len2);
}
else
{
s0[i]='';
ff(len2);
s0[i]='';
ff(len2);
}
s0[i]=cc2;
}
for(i=; i<k; i++)
{
for(j=; j<h; j++)
{
if(a[i]==b[j])
{
printf("%d\n",a[i]);
break;
}
}
}
memset(s,,sizeof(s));
memset(s0,,sizeof(s0));
}
}

NYOJ 1277Decimal integer conversion (第九届河南省省赛)的更多相关文章

  1. nyoj 1274信道安全 第九届河南省赛(SPFA)

    信道安全 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 Alpha 机构有自己的一套网络系统进行信息传送.情报员 A 位于节点 1,他准备将一份情报 发送给位于节点 ...

  2. 『NYIST』第九届河南省ACM竞赛队伍选拔赛[正式赛二]-最小内积(第八届北京师范大学程序设计竞赛决赛)

    H. 最小内积                                                                   Time Limit: 1000ms Memory ...

  3. 『NYIST』第九届河南省ACM竞赛队伍选拔赛[正式赛二]- Nearly Lucky Number(Codeforces Beta Round #84 (Div. 2 Only)A. Nearly)

    A. Nearly Lucky Number time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

  4. 『NYIST』第九届河南省ACM竞赛队伍选拔赛[正式赛二]--Codeforces -35D. Animals

    D. Animals time limit per test 2 seconds memory limit per test 64 megabytes input input.txt output o ...

  5. nyoj1273 河南省第九届省赛_"宣传墙"、状压DP+矩阵幂加速

    宣传墙 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 ALPHA 小镇风景美丽,道路整齐,干净,到此旅游的游客特别多.CBA 镇长准备在一条道路南 面 4*N 的墙上做 ...

  6. NYOJ 1272 表达式求值 第九届省赛 (字符串处理)

    title: 表达式求值 第九届省赛 nyoj 1272 tags: [栈,数据结构] 题目链接 描述 假设表达式定义为: 1. 一个十进制的正整数 X 是一个表达式. 2. 如果 X 和 Y 是 表 ...

  7. 河南省acm第九届省赛--《表达式求值》--栈和后缀表达式的变形--手速题

    表达式求值 时间限制:1000 ms | 内存限制:65535 KB 难度:3   描述 假设表达式定义为:1. 一个十进制的正整数 X 是一个表达式.2. 如果 X 和 Y 是 表达式,则 X+Y, ...

  8. 第七届河南省赛H.Rectangles(lis)

    10396: H.Rectangles Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 229  Solved: 33 [Submit][Status] ...

  9. 第七届河南省赛10403: D.山区修路(dp)

    10403: D.山区修路 Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 69  Solved: 23 [Submit][Status][Web Bo ...

随机推荐

  1. win10系统jdk安装和环境变量配置

    新换电脑的原因,要重新安装jdk,完整记录一下安装过程 jdk版本用的1.7(公司默认版本) 这是jdk安装目录   更改为D:\jdk\java\jdk1.7 安装jre目录  更改为D:\jdk\ ...

  2. 登录实现之servlet和SpringMVC

    #知识小点: 防止乱码的字符集的设置: request.setCharacterEncoding():确定从请求端发送到给服务器的编码是汉字字符集.该方法对get方法 无效,只对post方法有效.若要 ...

  3. django表单的api

    django表单的api,参考文档:https://yiyibooks.cn/xx/Django_1.11.6/ref/forms/api.html 绑定与未绑定形式: Form要么是绑定的,要么是未 ...

  4. fjwc2019 D6T2 密文(trie+贪心)

    #194. 「2019冬令营提高组」密文 设$s[i]$表示前$i$个密文的异或和 容易发现,只要知道$s[0]~s[n](s[0]=0)$就可以知道每一位的值. 转化一下,就变成了在完全图上求最小生 ...

  5. SVN更新无数次后仍显示Out of date

    理器相集成的TortoiseSVN更是方便. 但有时候在提交修改后的文件时,却莫名其妙的出现out of date错误,导致工程无法commit,即使将新文件删了重新update,然后再在旧文件上作修 ...

  6. Python3 解析excel文件

    Python3 解析读取excel文件 一.第三方库 import xlrd 二.代码示例 import xlrd ''' 读取Excel每个sheet的第一列和第二列的值,拼接成json串,写入文件 ...

  7. C# ms speech文字转语音例子

    最近突发奇想 想玩玩  文字转语音的东东   谷歌了一下 发现微软有一个TTS 的SDK   查了查相关资料  发现 还真不错  然后就开始玩玩Microsoft Speech SDK的 DEMO了 ...

  8. centos7.2 python2.7升级python3.6退格键不能用

    yum install readline-devel ./configure  --prefix=/usr/py/py3.6    (目录是自定义的这个根据实际情况来) make && ...

  9. uniGUI试用笔记(十一)

    最近研究了一下UniGUI的TuniDBGrid,记录一下免得忘记了. TuniDBGrid的重要属性包括: 1.列—TUniDBGridColumns和TUniDBGridColumn 每个列对象( ...

  10. Firemonkey的几个特色属性(二)

    3.RotationAngle 控件的旋转角度,可以通过TAnimation进行角度旋转控制. 4.RotationCenter 控件旋转的中心位置,从(0,0)到(1,1),缺省是(0.5,0.5) ...