九度OJ 1208:10进制 VS 2进制 (进制转换)
2015-10-27 12:29
555 查看
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2040
解决:612
题目描述:
对于一个十进制数A,将A转换为二进制数,然后按位逆序排列,再转换为十进制数B,我们乘B为A的二进制逆序数。
例如对于十进制数173,它的二进制形式为10101101,逆序排列得到10110101,其十进制数为181,181即为173的二进制逆序数。
输入:
一个1000位(即10^999)以内的十进制数。
输出:
输入的十进制数的二进制逆序数。
样例输入:
样例输出:
来源:2007年清华大学计算机研究生机试真题
思路:
进制转换思路简单,但特别容易出错, 要多练。
代码:
内存限制:32 兆
特殊判题:否
提交:2040
解决:612
题目描述:
对于一个十进制数A,将A转换为二进制数,然后按位逆序排列,再转换为十进制数B,我们乘B为A的二进制逆序数。
例如对于十进制数173,它的二进制形式为10101101,逆序排列得到10110101,其十进制数为181,181即为173的二进制逆序数。
输入:
一个1000位(即10^999)以内的十进制数。
输出:
输入的十进制数的二进制逆序数。
样例输入:
173
样例输出:
181
来源:2007年清华大学计算机研究生机试真题
思路:
进制转换思路简单,但特别容易出错, 要多练。
代码:
#include<stdio.h> #include<string.h> int main() { char a[1001]; int t[1000]; int bin[4000]; int lent,lenb; int i,j,k; int flag; int temp; while( ~scanf( "%s",a ) ) { lent = strlen(a); for( i = 0;i < lent;i++ ) { if( a[i] >= '0' && a[i] <= '9' ) t[i] = a[i] - '0'; else { printf( "wrong input!"); return 1; } } k = 0; j = 0; while( k < lent || t[lent-1] != 0 ) { flag = 0; for( i = k;i < lent;i++ ) { temp = flag; flag = t[i] % 2; // be careful don't need add flag,but not can't t[i] = ( t[i] + 10 * temp ) / 2; } if( t[k] == 0 ) k++; if( flag ) bin[j] = 1; else bin[j] = 0; j++; } for( i = 0;i < 1000;i++ ) t[i] = 0; lent = 1; for( i = 0;i < j;i++ ) { flag = 0; for( k = 0;k < lent;k++ ) { temp = t[k]; t[k] = ( t[k] * 2 + flag ) % 10; flag = ( temp * 2 + flag ) / 10; } if( flag ) t[lent++] = 1; if( bin[i] ) t[0]++; } for( i = lent - 1;i >= 0;i-- ) printf( "%d",t[i] ); printf( "\n" ); } return 0; } /************************************************************** Problem: 1208 User: liangrx06 Language: C Result: Accepted Time:20 ms Memory:912 kb ****************************************************************/
相关文章推荐
- gdb qemu调试linux kernel并修改远程连接的bug
- Windows无法启动OracleOraDb10g_home1TNSListener维修,1错误067
- Objective-C中的getter与setter
- Lua中的基本函数库
- [LeetCode] Search in Rotated Sorted Array II [36]
- 图解linux启动过程
- iOS-极光推送开发小结
- java.net.SocketException: Unconnected sockets not implemented 解
- Tomcat 7优化前及优化后的性能对比
- shiro、SpringMVC权限控制
- Android OOM解决思路
- ncdu安装与使用
- iOS-极光推送开发小结
- poj 2023 Choose Your Own Adventure 树形结构的搜索
- android stadio点滴2
- 九度OJ 1207:质因数的个数 (质数)
- 九度OJ 1207:质因数的个数 (质数)
- XCode 7.1 发送HTTP请求报错解决办法
- 我在 Google 做技术经理的一天
- 九度OJ 1206:字符串连接 (字符串操作)