1958: 数字游戏

Submit Page   Summary   Time Limit: 2 Sec     Memory Limit: 128 Mb     Submitted: 134     Solved: 19


Description

小明今年才上一年级,加减法只会算加一和减一。老师就是喜欢看小明写不出题目的样子,所以给小明出了个难题:给出两个数字x,y,每次可以让数字的某一位加一或者减一(0减1变成9,9加1变成0)。问从x变到y至少要几次操作?小明虽然数学不好但是编程很强呀,他很快就得出了正确答案,现在看你的了~
注意:每次变换只能变动除前导零的数位。例如1109变成0109后不能变再成1109或者9109,但是单就一个数字0可以变成1或9。

Input

第一行是一个数字T(T<=10)表示数据组数
接下来T行,每行两个数字x,y(0<=x,y<=100000)
x和y不包含前导零

Output

输出包括T行,第i行对应第i组数据的答案.
如果x无法变成y,输出-1

Sample Input

3
10 11
99 100
52 75

Sample Output

1
-1
5

Hint

Source

2017年6月月赛-暨中南大学暑期集训选拔赛第二场

Author

卢铭威

题解:这个题目我是没有想明白  为什么要2sec   0ms的事情

先比较一下这个 数字的长度    判断前一个数字可不可以转变成第二个   如果可以的话

从最后一位可以变   一个循环遍历所有位就可以了   数据最大才6位数

 #include<iostream>
#include<cstdio>
#include<math.h>
#include<algorithm>
#include<stdlib.h>
using namespace std;
int main()
{
int n,x,y,num1,num2,ans;
scanf("%d",&n);
while(n--)
{
ans=;
scanf("%d%d",&x,&y);
int temp1=x,temp2=y;
num1=num2=;
while(temp1>)
{
temp1/=;
num1++;
}
while(temp2>)
{
temp2/=;
num2++;
}
if(num1<num2)
{
printf("-1\n");
continue;
}
for(int i=;i<num1;++i)
{
temp1=x%;
temp2=y%;
int h=abs(temp1-temp2);
ans+=min(h,-h);
x/=;
y/=;
}
printf("%d\n",ans);
}
return ;
}

csu 1958: 数字游戏的更多相关文章

  1. C语言猜数字游戏

    猜数字游戏,各式各样的实现方式,我这边提供一个实现方式,希望可以帮到新手. 老程序猿就不要看了,黑呵呵 源代码1 include stdio.h include stdlib.h include ti ...

  2. 不一样的猜数字游戏 — leetcode 375. Guess Number Higher or Lower II

    好久没切 leetcode 的题了,静下心来切了道,这道题比较有意思,和大家分享下. 我把它叫做 "不一样的猜数字游戏",我们先来看看传统的猜数字游戏,Guess Number H ...

  3. java 猜数字游戏

    作用:猜数字游戏.随机产生1个数字(1~10),大了.小了或者成功后给出提示. 语言:java 工具:eclipse 作者:潇洒鸿图 时间:2016.11.10 >>>>> ...

  4. 【原创Android游戏】--猜数字游戏Version 0.1

    想当年高中时经常和小伙伴在纸上或者黑板上或者学习机上玩猜数字的游戏,在当年那个手机等娱乐设备在我们那还不是很普遍的时候是很好的一个消遣的游戏,去年的时候便写了一个Android版的猜数字游戏,只是当时 ...

  5. 【原创Android游戏】--猜数字游戏V1.1 --数据存储,Intent,SimpleAdapter的学习与应用

    --------------------------------------------------------------- V0.1版本 上次做完第一个版本后,发现还有一些漏洞,并且还有一些可以添 ...

  6. NOIP2003pj数字游戏[环形DP]

    题目描述 丁丁最近沉迷于一个数字游戏之中.这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易.游戏是这样的,在你面前有一圈整数(一共n个),你要按顺序将其分 ...

  7. Codevs 1229 数字游戏

    1229 数字游戏  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver     题目描述 Description Lele 最近上课的时候都很无聊,所以他发明了 ...

  8. codevs 1229 数字游戏(可重集的全排列)

    传送门 Description Lele 最近上课的时候都很无聊,所以他发明了一个数字游戏来打发时间.  这个游戏是这样的,首先,他拿出几张纸片,分别写上0到9之间的任意数字(可重复写某个数字),然后 ...

  9. XDU 1161 - 科协的数字游戏II

    Problem 1161 - 科协的数字游戏II Time Limit: 1000MS   Memory Limit: 65536KB   Difficulty: Total Submit: 112  ...

随机推荐

  1. 洛谷 P1309 瑞士轮 题解

    每日一题 day4 打卡 Analysis 暴力+快排(其实是归并排序) 一开始天真的以为sort能过,结果光荣TLE,由于每次只更改相邻的元素,于是善于处理随机数的快排就会浪费很多时间.于是就想到归 ...

  2. Qt进程间通信

    Qt 提供了四种进程间通信的方式: 使用共享内存(shared memory)交互:这是 Qt 提供的一种各个平台均有支持的进程间交互的方式. TCP/IP:其基本思想就是将同一机器上面的两个进程一个 ...

  3. C/C++ -- 判断字符串中存在中文

    电脑系统中的英文字符串和中文字符最根本的区别就在于: 1.英文的 ASCII 码,其最高位为 0,占一个字节 注:英文的ASCII码范围是在0到127,二进制为(0000 0000 ~ 0111 11 ...

  4. 5-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(,远程升级GPRS内部程序)

    https://www.cnblogs.com/yangfengwu/p/10410202.html 与升级WIFI相同介绍的不再叙述  先看WIFI升级的: ↑ 演示视频: https://www. ...

  5. Bzoj 1566: [NOI2009]管道取珠(DP)

    1566: [NOI2009]管道取珠 Time Limit: 20 Sec Memory Limit: 650 MB Submit: 1558 Solved: 890 [Submit][Status ...

  6. linux系列(八):cp命令

    1.命令格式: cp [选项]... [-T] 源 目的 2.命令功能: 将源文件复制至目标文件,或将多个源文件复制至目标目录. 3.命令参数: -a:此参数的效果和同时指定"-dpR&qu ...

  7. linux系列(十五):tail命令

    1.命令格式: tail[必要参数][选择参数][文件] 2.命令功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理.常用查看日志文件. 3.命令参数: -f 循环读取 -q 不显示 ...

  8. 7、transformation和action2

    一.transformation开发实战 1.map: 将集合中每个元素乘以2 使用map算子,将集合中的每个元素都乘以2 map算子,是对任何类型的RDD,都可以调用的,在Java中,map算子接收 ...

  9. nodejs+supertest+mocha 接口测试环境搭建

    系统接口自动化测试 该框架用于对系统的接口自动化测试(nodejs+supertest+mocha)Homebrew 安装: ruby -e "$(curl -fsSL {+}https:/ ...

  10. python版本下载时时,官方目录web-based与executable和embeddable 的区别

    背景:安装python时不知道选择哪个版本以及他们之间的意思. 1.X86和X86-64的区别:系統是32 bit 的版本还是 64bit 的 2.web-based ,executable , em ...