【Nowcoder 上海五校赛】二数(模拟)
题目描述:
换句话说,给定一个十进制下最多105位的数字,请你求出和这个数字的差的绝对值最小的二数,若答案不唯一,输出最小的那个。
输入描述:
1 ≤ T ≤ 100, 1 ≤ n ≤ 10100000 - 1,T组数据的数字的十进制表示长度总和不超过1000000
输出描述:
每行一个整数 m 第 i 行表示第 i 个数所对应的“最邻近二数”
输入例子:
5 42 11 1 2018 13751
输出例子:
42 8 0 2020 8888
-->
输入
5 42 11 1 2018 13751
输出
42 8 0 2020 8888
题解:
(1) 找到该数的最高位的奇数,若无奇数可以直接输出。
(2) 然后依次判断以下三种情况:
<1>如果最高奇位的值为9,把包括最高奇位在内的每一位数字都变成8;
<2>如果这个数除最高奇位外,有一位数≤4,则最高奇位的值-1,之后的低位全变为8;
<3>如果这个数除最高奇位外,有一位数>4,最高奇位的值+1,之后的低位全变为0;
(3) 注意去除前导0。
#include<bits/stdc++.h>
using namespace std;
#define N 1000005
char a[N];
int main()
{
int i,j,t,flag;
cin>>t;
while(t--)
{
flag=;
scanf();
;a[i];i++)
{
') //如果找到9
{
for(j=i;a[j];j++)
printf(");
break;
}
==) //如果找到最高奇位
{
;a[j];j++)
{
')
{
flag=;
break;
}
')
break;
}
if(flag) //奇位+1,低位补0
{
printf();
;a[j];j++)
printf(");
break;
}
else if(!flag) //奇位-1,低位补8
{
) //如果改变的最高奇位在第一位
{
!=]=='\0') //而且第一位不为0且输入的数是个位
printf();
}
); //如果改变的最高奇位不是第一位就直接输出
;a[j];j++)
printf(");
break;
}
}
else printf("%c",a[i]); //如果是偶数就先输出
}
printf("\n");
}
;
}
【Nowcoder 上海五校赛】二数(模拟)的更多相关文章
- 【Nowcoder 上海五校赛】1 + 2 = 3?(斐波那契规律)
题目描述 小Y在研究数字的时候,发现了一个神奇的等式方程,他屈指算了一下有很多正整数x满足这个等式,比如1和2,现在问题来了,他想知道从小到大第N个满足这个等式的正整数,请你用程序帮他计算一下. (表 ...
- hdu 4023 2011上海赛区网络赛C 贪心+模拟
以为是贪心,结果不是,2333 贪心最后对自己绝对有利的情况 点我 #include<cstdio> #include<iostream> #include<algori ...
- Nowcoder 北师校赛 B 外挂使用拒绝 ( k次前缀和、矩阵快速幂打表找规律、组合数 )
题目链接 题意 : 中文题.点链接 分析 : 有道题是问你不断求前缀和后的结果 Click here 这道题问的是逆过程 分析方法雷同.可参考 Click here ----------------- ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- 2014上半年acm总结(1)(入门+校赛)
大一下学期才开始了acm,不得不说有一点迟,但是acm确实使我的生活充实了很多,,不至于像以前一样经常没事干= = 上学期的颓废使我的c语言学的渣的一笔..靠考前突击才基本掌握了语法 寒假突然醒悟, ...
- 牛客网多校赛第9场 E-Music Game【概率期望】【逆元】
链接:https://www.nowcoder.com/acm/contest/147/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- 【五校联考1day2】JZOJ2020年8月12日提高组T2 我想大声告诉你
[五校联考1day2]JZOJ2020年8月12日提高组T2 我想大声告诉你 题目 Description 因为小Y 是知名的白富美,所以自然也有很多的追求者,这一天这些追求者打算进行一次游戏来踢出一 ...
- SCNU省选校赛第二场B题题解
今晚的校赛又告一段落啦,终于"开斋"了! AC了两题,还算是满意的,英语还是硬伤. 来看题目吧! B. Array time limit per test 2 seconds me ...
- 从头开始学JavaScript (五)——操作符(二)
原文:从头开始学JavaScript (五)--操作符(二) 一.乘性操作符 1.乘法:* 乘法操作符的一些特殊规则: 如果操作数都是数值,按照常规的乘法计算,如果乘积超过了ECMAscri ...
随机推荐
- Cocos2d-js 开发记录:自定义按钮
游戏开发总是有些特殊,一般的预制的UI无法满足要求.其实对于不复杂的功能,与其看文档还不如自己写一个.比如游戏中一个虚拟键盘,其中的按键在按下时会增长,变为原来的两倍高度,在原来高度上方显示按键的字如 ...
- jQuery plugin: Tablesorter 2.0
http://mottie.github.io/tablesorter/docs/example-pager.htmlhttp://tablesorter.com/docs/example-pager ...
- html5格式样式
<b> 加粗 <b style="font-size: 100px;">大字体</b>
- ECMAscript 变量作用域
使用var操作符声明的变量与未使用var操作符声明的变量区别 未使用var操作符声明 function test() { message='hi'; console.log(message); } c ...
- 使用CKRule实现PVC配方计算
1,PVC计算的基本原理 配方员设计好配方,再进行抽象提炼,会出现相对于软件而言可以理解的逻辑,如属性的概念,对厂企生成的PVC产品而言,一般都有产品大类名称,花纹,颜色,长度,宽度,厚度等概念,这对 ...
- Network Embedding 论文小览
Network Embedding 论文小览 转自:http://blog.csdn.net/Dark_Scope/article/details/74279582,感谢分享! 自从word2vec横 ...
- matlab练习程序(Bresenham画线)
Bresenham画线算图形学中最基础的知识了,可惜我并没有选修过图形学,所有还是有必要熟悉一下. 上一篇用到的画线函数应该算是数值微分法,也是我最常用的一种方法,不过这种方法似乎并不是很好. 这里的 ...
- Hive的运算和函数大全
hive 常用运算 测试各种内置函数的快捷方法: 创建一个 dual 表 create table dual(id string); load 一个文件(只有一行内容:内容为一个空格)到 dual 表 ...
- 会话cookie中缺少HttpOnly属性 解决
会话cookie中缺少HttpOnly属性 解决 只需要写一个过滤器即可 1 package com.neusoft.streamone.framework.security.filter; 2 ...
- 离线安装wxpython
离线安装wxpython 前言 由于工作环境,我的工作机是在离线环境下的,没法连接外网.但是自己又想学习一下wxpython,只好自己手动离线安装,本来以为很简单的,但是实际上...一言难尽. 基本环 ...