TYVJ P1022 进制转换 Label:坑
背景
描述
例如,因为 1*1 + 1*-2 + 1*4 + 0*-8 +1*16 + 1*-32 = -13 ,所以(-13)_10 = (110111)_-2。
输入格式
输出格式
测试样例1
输入
-13
输出
110111
备注
Vivian Snow
广东汕头聿怀初级中学NOIp第一次训练用题
代码
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 long long n; 7 int p,ans[35]; 8 int main(){ 9 scanf("%lld",&n); 10 for(long long i=1;p<=32;i*=-2,p++){ 11 if((n/i)&1){ 12 ans[p]=1; 13 n-=i; 14 } 15 } 16 while(!ans[p]&&p!=0) p--; 17 for(int i=p;i>=0;i--){ 18 printf("%d",ans[i]); 19 } 20 puts(""); 21 return 0; 22 }思路:和平常进制转换一样。但是:
如果用普通的%或者mod结果不对,为什么?因为它不是往下取第一个能被-2整除的数,而是把此数对2取模,然后依前者符号决定。所以,要手工用“往下取第一个能被-2整除的数”作为求余数的方法。
从低位开始,用n除以该位的进制数,看结果是否为奇数,注意要开longlong
转载于:https://www.cnblogs.com/radiumlrb/p/5792999.html
TYVJ P1022 进制转换 Label:坑相关推荐
- JAVA 进制转换工具类 10进制转16进制 10进制转2进制 16进制转2进制 16进制10进制 2进制转10进制 2进制转16进制
进制转换的坑: 注意:使用Integer的方法转换出来的2进制字符串 最高位是没有补零的 ,java的Integer类的toBinaryString()方法转换出来的二进制字符串只会保留最高非零位以后 ...
- ZOJ1217 Numerically Speaking (进制转换,大整数除法,字符串处理,较难而且坑)
题目 题目链接: ZOJ1217 Numerically Speaking https://zoj.pintia.cn/problem-sets/91827364500/problems/918273 ...
- 写一个比较全的进制转换函数--ic
//写一个比较全的进制转换函数-----未完成 #include <stdio.h> //D进制转换后 (比如10-2进制) 结果可能会很大 需要很长的字符串来存 #include < ...
- 【PAT甲级 进制转换】1019 General Palindromic Number (20 分) Java版 7/7通过
题目 这道题可以说是非常友善了,说白了是个水题.题目没什么坑,一次通过,主要思想就是: 输入两个数:num和base 将num按照base进制转换,得到arr 判断arr是否是一个回文数,并且输出这个 ...
- 牛客题霸 [进制转换] C++题解/答案
进制转换 题目描述 给定一个十进制数M,以及需要转换的进制数N.将十进制数M转化为N进制数 题解: 看似简单的进制转换套路非常多 1.M是32位整数,有可能是负数,所以还要特判一下 2.N的范围是[2 ...
- javascript进制转换_《算法笔记》3.5小节——入门模拟-gt;进制转换
@[TOC] # Contest100000579 - <算法笔记>3.5小节--入门模拟->进制转换 ## 例题 ### PATB1022 PTA | 程序设计类实验辅助教学平台 ...
- C语言32位正整数作为id进程,SOJ4453 Excel列数 进制转换
描述 我们都知道Excel的列数是用字母表示的,比如第1列对应A,第27列对应AA. 假设给定一个正整数n,你能给出它所对应的字母表示么? 输入格式 程序需要读入多个测试样例,每个测试样例中: 一个正 ...
- python tkinter 进制转换工具
# -*- coding: utf-8 -*- from tkinter import * import tkinter.messagebox as boxclass main:base = [str ...
- java实现多功能科学计算器(包括进制转换,三角函数,四则运算等)
多功能科学计算器(包括进制转换,三角函数,四则运算等) Basic Framework calculator.java package myCalculator; import java.awt.*; ...
- Java做一个进制转换小工具
通过swing和awt实现的一个简单的进制转换工具 可以进行数之间的进制转换 只有两个类 所有代码都放在https://github.com/13337356453/BHD_Converter 可自行 ...
最新文章
- linux 文本行倒叙,Linux基础(4)之文本处理
- 控制器描述者(ControllerDescriptor),行为方法描述者(ActionDescriptor),参数描述者(ParameterDescriptor)的小结...
- 初识Mongodb总结
- 4月份不良与垃圾信息举报:垃圾邮件占37.4%
- Fireworks 期望,几何分布,概率,三分(2020.12.南京)
- 【CyberSecurityLearning 27】扫描与密码爆破
- 获取上传文件的后缀名
- 重写Gallery中方法去处理Gallery滑动时的惯性
- Windows XP系统安装SQL Server 2005(开发版)图解
- python pow函数用法_Python代码中pow()函数具有哪些功能呢?
- 小白记事本--学不明白还怕忘记指针--loading未完待续
- 高聚合和低耦合的理解
- 宇视交换机vlan路由配置指导
- Sovit3D三维可视化开发工具动画定义新功能
- 谈谈我所了解的数据分析行业(下)
- 解决 array subscript has type char 错误
- 快速入手Web幻灯片制作
- 硬盘smart健康深度检测工具——WGCLOUD
- Duplicate Finder for Mac 1.4.3 重复文件查找和删除 破解版下载
- echarts+高德地图设置卫星图层
热门文章
- 代码统计工具有哪几种_抖音小程序如何开发及类型有哪几种?
- java基本操作-2
- python3虚拟环境的设置
- web在session设置的账户用户名显示为空_海蜘蛛路由Web认证怎么设置 海蜘蛛路由Web认证方法【介绍】...
- 单网卡同时上内外网_Win10双网卡上网冲突(内网、外网)
- UOJ#52. 【UR #4】元旦激光炮(交互)
- linux 下 dhcp failover相关
- android--------自定义控件 之 组合控件篇
- React Native 圆形进度条组件
- ELK系列~NLog.Targets.Fluentd到达如何通过tcp发到fluentd