poj3191(负进位制)
题目链接:https://vjudge.net/problem/POJ-3191
题意:将一个int范围的整数用-2进制表示并输出。
思路:将十进制转换成-2进制,原理也类似于短除法。但不同的是不是简单的取模,因为在复数方面对余数的定义可能造成二义性。假设要转换成a进制(a<0),一般的做法是找到最小的非负整数x,使得当前的数减x能被a整除,这个x就将作为新的最高位写到结果中去,然后当前数减x除以a。直到当前数为0。
AC代码:
#include<cstdio>
using namespace std; int n,k;
int a[]; int main(){
scanf("%d",&n);
if(n==){
printf("0\n");
return ;
}
while(n){
int tmp=n%;
if(n<) tmp=-tmp;
a[k++]=tmp;
n=(n-tmp)/(-);
}
for(int i=k-;i>=;--i)
printf("%d",a[i]);
printf("\n");
return ;
}
poj3191(负进位制)的更多相关文章
- The Moronic Cowmpouter(负进位制转换)
http://poj.org/problem?id=3191 题意:将一个整型的十进制整数转化为-2进制整数. #include <stdio.h> #include <algori ...
- Codevs 2898 卢斯的进位制
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 青铜 Bronze 题目描述 Description 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母 ...
- 【XSY1529】小Q与进位制 分治 FFT
题目大意 小Q发明了一种进位制,每一位的变化范围是\(0\)~\(b_i-1\),给你一个这种进位制下的整数\(a\),问你有多少非负整数小于\(a\).结果以十进制表示. \(n\leq 1 ...
- ACM 求全排列(字典序、邻位对换、递增进位制数,递减进位制数)
字典序:(联合康托展开就也可以按照中介数求) 邻位对换.递增进位制数,递减进位制数:具体的实现和算法讲解如下: 代码..C++版的实现并不好..因为是挨个向后找的,如果K很大的时候会超时,不过...思 ...
- UVALive 3958 Weird Numbers (负进制数)
Weird Numbers 题目链接: http://acm.hust.edu.cn/vjudge/contest/129733#problem/F Description Binary number ...
- 2016北京集训 小Q与进位制
题目大意 一个数每一位进制不同,已知每一位的进制,求该数的十进制表达. 显然有 $$Ans=\sum\limits_{i=0}^{n-1}a_i \prod\limits_{j=0}^{i-1}bas ...
- P1017 进制转换 (负进制转换)
和平常的转化差不多 加多一步 如果余数 < 0, 那么余数减去除数(此时除数是负),商数加1 #include<cstdio> #define _for(i, a, b) for(i ...
- MT【142】Bachet 问题,进位制
问题: 满足下面两种限制条件下要想称出40以内的任何整数重量,最少要几个砝码: i)如果砝码只能在天平的某一边; ii)如果砝码可以放在天平的两边. 提示:对于 i)先证明如下事实: \[\textb ...
- 高精度进位制转换,Poj(1220)
转自ACdream. #include <stdio.h> #include <string.h> #include <stdlib.h> #define MAXS ...
随机推荐
- LINUX笔记之二常用命令(文件处理命令)
一.概述 1. “.”开头的文件是隐藏文件,大小写敏感是因为用C语言编写 2. DOS中 cd..可回到父目录 在LINUX中要用cd ..(用空格) 3. 4.LINUX命令有两种:仅root可执行 ...
- 【leetcode】1232. Check If It Is a Straight Line
题目如下: You are given an array coordinates, coordinates[i] = [x, y], where [x, y] represents the coord ...
- [深度学习] pytorch利用Datasets和DataLoader读取数据
本文简单描述如果自定义dataset,代码并未经过测试(只是说明思路),为半伪代码.所有逻辑需按自己需求另外实现: 一.分析DataLoader train_loader = DataLoader( ...
- Linux 下的tmpfs文件系统(/dev/shm)
介绍 /dev/shm/是一个使用就是tmpfs文件系统的设备,其实就是一个特殊的文件系统.redhat中默认大小为物理内存的一半,使用时不用mkfs格式化. tmpfs是Linux/Unix系统上的 ...
- sh_08_格式化字符串
sh_08_格式化字符串 info_tuple = ("小明", 21, 1.85) # 格式化字符串后面的 `()` 本质上就是元组 print("%s 年龄是 %d ...
- 删除全局安装的npm包
方法一 : 使用命令 npm uninstall -g 包名 方法二: 直接找到对应包删除 C:\Users\自己用户的文件夹\AppData\Roaming\npm 将对应的包删除即可
- 大哥带的DOM-XSS进阶eval构造XSS
0X01源码分析 那么我们可以如何来构造语法呐??已知eval函数可以执行js 最终的输出是eval(this.xss="你提交的参数";) 那我们是不是可以从参数这里构造一个js ...
- 分布式-信息方式-JMS大纲
一.简介 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息, ...
- C# 给某个方法设定执行超时时间-2
var response = RunTaskWithTimeout<ReturnType>( (Func<ReturnType>)); /// <summary> ...
- Redis中存字段key出现 \xef \xbb \xbf
环境: java向redis中存数据用于重复判断,结果有一条记录居然去不了重复,用Redis DeskTop Manager 查看发现,有一个 key 中居然是这样的: 20190324157:\xE ...