博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1010. Radix (25)
阅读量:4150 次
发布时间:2019-05-25

本文共 2225 字,大约阅读时间需要 7 分钟。

这道题目我比较清晰的记得参考了的代码

故直接附上的完整代码,链接:

#include 
#include
#define max 11char a[4][max];long long num2Dec(char * p, long long radix) { long long i; long long len=strlen(p); long long digit = 0; long long m = 1; long long sum = 0; for(i=len-1;i>=0;i--) { if(p[i]>='a'&&p[i]<='z') digit= p[i] - 'a' + 10; else if(p[i]>='0'&& p[i]<='9') digit=p[i] - '0'; sum+=digit*m; m*=radix; } return sum; } int findLeastRadix(char *p) { long long len=strlen(p); long long low=0; long long num; long long i; for(i=len-1;i>=0;i--) { if(p[i]>='a'&&p[i]<='z') num= p[i] - 'a' + 10; else if(p[i]>='0'&& p[i]<='9') num=p[i] - '0'; if(num+1>low) low=num+1; } return low; }int compare(char* p, long long radix, long long target) { long long i; long long len=strlen(p); long long m = 1; long long num = 1; long long sum = 0; for(i=len-1;i>=0;i--) { if(p[i]>='a'&&p[i]<='z') num= p[i] - 'a' + 10; else if(p[i]>='0'&& p[i]<='9') num=p[i] - '0'; sum+=num*m; m*=radix; if(sum>target) //avoid overflow return 1; } if(sum>target) return 1; else if(sum
> 1; } return -1;}int main(int argc, char* argv[]){ int i; int tag; int base; long long n1; long long n2; long long low; long long high; long long radix; for(i=0; i<4; i++) { scanf("%s", a[i]); } tag = atoi(a[2]); base = atoi(a[3]); switch(tag) { case 1 : n1 = num2Dec(a[0], base); low=findLeastRadix(a[1]); high = (n1+1 > low+1) ? n1+1 : low+1; radix = binarySearch(a[1], low, high, n1); break; case 2 : n2 = num2Dec(a[1], base); low=findLeastRadix(a[0]); high = (n2+1 > low+1) ? n2+1 : low+1; radix = binarySearch(a[0], low, high, n2); break; } if(-1 != radix){ printf("%ld\n", (long)radix); } else { printf("Impossible"); } return 0;}

转载地址:http://laxti.baihongyu.com/

你可能感兴趣的文章
【JAVA数据结构】双向链表
查看>>
【JAVA数据结构】先进先出队列
查看>>
Objective-C 基础入门(一)
查看>>
Flutter Boost的router管理
查看>>
C++模板
查看>>
【C#】如何实现一个迭代器
查看>>
【C#】利用Conditional属性完成编译忽略
查看>>
VUe+webpack构建单页router应用(一)
查看>>
(python版)《剑指Offer》JZ01:二维数组中的查找
查看>>
Spring MVC中使用Thymeleaf模板引擎
查看>>
深入了解php底层机制
查看>>
PHP中的stdClass 【转】
查看>>
XHProf-php轻量级的性能分析工具
查看>>
OpenCV gpu模块样例注释:video_reader.cpp
查看>>
就在昨天,全球 42 亿 IPv4 地址宣告耗尽!
查看>>
Mysql复制表以及复制数据库
查看>>
Linux分区方案
查看>>
如何使用 systemd 中的定时器
查看>>
linux进程监控和自动重启的简单实现
查看>>
OpenFeign学习(三):OpenFeign配置生成代理对象
查看>>