POJ 1220 NUMBER BASE CONVERSION(较复杂的进制转换)
题意 : 给你一个a进制的数串s,让你转化成b进制的输出。 A = 10, B = 11, ..., Z = 35, a = 36, b = 37, ..., z = 61,0到9还是原来的含义。
思路 : 这个题因为牵扯了英文字母所以比较复杂一点,先将所有出现的英文字母转化成他们所代表的数,然后进行进制转换。
//POJ 1220
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <math.h> using namespace std ; int i,l,k,a,b,T,t[],A[] ;
char s[],d[] ; int main()
{
scanf("%d",&T) ;
while(T--)
{
scanf("%d %d %s",&a,&b,s) ;
for(k = i = strlen(s) ; < i-- ; )
t[k--i] = s[i]-(s[i] < ? : s[i] < ? :) ;
for(l = ; k ; )
{
printf("%d ",k) ;
for(i = k ; < i-- ; )
{
t[i-] += t[i] % b * a ;
t[i] /= b ;
}
A[l++] = t[] % b ;
t[] /= b ;
for( ; < k && !t[k-] ; k--) ;
}
for(d[l] = i = ; i < l ; i++)
d[l--i] = A[i] + (A[i] < ? : A[i] < ? : ) ;
printf("%d %s\n%d %s\n\n",a,s,b,d) ;
}
return ;
}
POJ 1220 NUMBER BASE CONVERSION(较复杂的进制转换)的更多相关文章
- poj 1220 NUMBER BASE CONVERSION(短除法进制转换)
题目连接:1220 NUMBER BASE CONVERSION 题目大意:给出两个进制oldBase 和newBase, 以及以oldBase进制存在的数.要求将这个oldBase进制的数转换成ne ...
- poj 1220 NUMBER BASE CONVERSION
NUMBER BASE CONVERSION Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 5976 Accepted: ...
- (高精度运算4.7.26)POJ 1220 NUMBER BASE CONVERSION(高精度数的任意进制的转换——方法:ba1----->10进制----->ba2)
package com.njupt.acm; import java.math.BigInteger; import java.util.Scanner; public class POJ_1220_ ...
- 11 JavaScript Number原始值&对象&科学记数法&范围&进制转换&溢出Infinity&NaN
JavaScript Number对象 是经过封装的能处理数字值的对象 由Number()构造器创建 只有一种数字类型 可以使用也可以不使用小数点书写数字 JavaScript原始值与对象: 在Jav ...
- POJ 2305:Basic remains 进制转换
Basic remains Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5221 Accepted: 2203 Des ...
- NUMBER BASE CONVERSION(进制转换)
Description Write a program to convert numbers in one base to numbers in a second base. There are 62 ...
- SZU:J38 Number Base Conversion
Judge Info Memory Limit: 32768KB Case Time Limit: 1000MS Time Limit: 1000MS Judger: Number Only Judg ...
- $Poj1220/AcWing124\ Number\ Base\ Convertion$ 进制转换+高精除
$Poj$ $AcWing$ $Description$ $Sol$ 进制转化+高精度除法 $over$ $Code$ #include<bits/stdc++.h> #define ...
- POJ 2305 Basic remains(进制转换)
题目链接:http://poj.org/problem?id=2305 ime Limit: 1000MS Memory Limit: 65536K Total Submissions: 5326 ...
随机推荐
- android输入框显示在软键盘上边
有时候在界面需要输入的时候,如果输入框在界面的下方,软键盘弹出的时候会遮挡输入框界面,对用户的体验不是很好. 在网上找的别人的解决方案 首先: 清单文件里面配置:android:windowSoftI ...
- 解释清楚c++的重载操作符【用自己的话,解释清楚】
C++中对于内置的变量及标准库中常见的类定义类常见的操作符含义,对于自定义的类也可以通过关键字operate 重载操作符的含义. C++中支持重载的目的 诚然操作符的重载可以通过使用函数实现同样的功能 ...
- 第一篇、微信小程序_01计算器
官方文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/index.html 一.计算器的首页布局 第一部分WXML: <view class=&quo ...
- iMAC——查看开机关机时间
每次下班都记不好早上几点打的卡,你是不是也经常有这样的情况: 那就用以下的代码考到Mac电脑的终端中,回车: mac终端输入上面命令行 查看开机时间: last | grep reboot 查看关机 ...
- int/double/string使用
在计算机中存储数据和儿童在抽屉中存放物品很类似. 例如: 要在计算机中存一个数字50,需要两句话. int a; //将要放的物品告诉家长 a=50; //将物品放到某个抽屉中 计算机存储变量的过 ...
- @override
目录 用处 作用 注意 用处: 继承抽象类,必须实现抽象方法,方法上要加@override 实现接口时,必须实现接口里定义的方法,方法上要加@override 作用: 可以检查方法 ...
- 查找-find -grep
find#.#-name#"*pc"#|#xargs#grep#"Flag" “*.pc”设置要找的文件名grep后面是要找的字符串 #是空格
- The C in C++
1 unnamed arguments in the argument list of the function definition (Page 114) In c++, an argument m ...
- Jquery 获取各种高度、宽度【整理】
alert($(window).height()); //浏览器当前窗口可视区域高度 alert($(document).height()); //浏览器当前窗口文档的高度 alert($(docum ...
- spring-cloud-feign案例
主要依赖 <dependencyManagement> <dependencies> <dependency> <groupId>org.springf ...