OpenJudge百炼-2739-计算对数-C语言-高精度
来源:互联网 发布:淘宝达人帖子写手 编辑:程序博客网 时间:2024/05/22 12:53
描述:
给定两个正整数a(a>1)和b。可以知道一定存在整数x,使得x <= logab < x + 1 或者 ax<= b < ax+1,请计算x。
输入:
两行,第一行是a,第二行是b。每个整数均不超过100位。
输出:
一行,即对应的x。输入数据保证x不大于20。
样例输入:
10000
1000000000001
样例输出:
3
/*****************************************************文件名:百炼-2739**Copyright (c) 2015-2025 OrdinaryCrazy**创建人:OrdinaryCrazy**日期:20170902**描述:百炼2739参考答案**版本:1.0****************************************************/#include <stdio.h>#include <string.h>int numa[150],numb[150],numc[150],lena,lenb;int compare(int*num1,int*num2){ int i; for(i = 149;i >= 0;i--) if(num1[i] - num2[i]) return num1[i] - num2[i]; return 0;}void multiply(int*num1,int*num2){ int i,j,tmp[310]; memset(tmp,0,sizeof(tmp)); for(i = 0;i < lena;i++) for(j = 0;j < 150;j++) tmp[i+j] += num1[i] * num2[j]; for(i = 0;i < 150;i++) { tmp[i+1] += tmp[i]/10; tmp[i] %= 10; } memcpy(num2,tmp,150*sizeof(int));}int main(){ char a[151],b[151]; int i,j; scanf("%s%s",a,b); lena = strlen(a); lenb = strlen(b); for(i = lena-1,j = 0;i >= 0;i--,j++) numa[j] = a[i] - '0'; for(i = lenb-1,j = 0;i >= 0;i--,j++) numb[j] = b[i] - '0'; numc[0] = 1; for(i = 0;;i++) { if(compare(numc,numb) > 0) break; multiply(numa,numc); } printf("%d\n",i - 1); return 0;}
阅读全文
0 0
- OpenJudge百炼-2739-计算对数-C语言-高精度
- OpenJudge百炼-2706-麦森数-C语言-高精度计算
- OpenJudge百炼-2764-数根-C语言-高精度计算
- OpenJudge百炼-2765-八进制小数-C语言-高精度计算
- OpenJudge百炼-2951&PKU-1001-浮点数高精度幂-C语言-高精度计算
- OpenJudge百炼-2809-计算2的N次方-C语言-高精度计算
- OpenJudge百炼-2981-大整数加法-C语言-高精度计算
- OpenJudge百炼-2980-大整数乘法-C语言-高精度计算
- OpenJudge百炼-2737-大整数除法-C语言-高精度计算
- OpenJudge百炼-2952-循环数 & poj-1047-Round and Round We Go-C语言-高精度计算
- OpenJudge百炼-1183-反正切函数的应用-C语言-简单计算
- OpenJudge百炼-2967-特殊日历计算-C语言-日期处理
- OpenJudge百炼-2974-487-3279-C语言-字符串处理
- OpenJudge百炼-2744-子串-C语言-字符串处理
- OpenJudge百炼-2712-细菌繁殖-C语言-日期处理
- OpenJudge百炼-2964-日历问题-C语言-日期处理
- OpenJudge百炼-2965-玛雅历-C语言-日期处理
- OpenJudge百炼-2966-时区转换-C语言-日期处理
- Android快速开发系列 10个常用工具类
- Problems & Solutions -- 7 MySQLdb in python
- 秒针系统提前批面试
- 签到啦
- Longest_consecutive_sequence
- OpenJudge百炼-2739-计算对数-C语言-高精度
- 签名验签自助排查
- redis服务器允许远程访问
- jfinal 判断方法参数不能为空的注解
- 【技术】C#、C++、JAVA中虚函数和抽象函数的概念对比
- alert 为什么会比它上一条语句先执行
- win10专业版激活
- mysql5.7在Linux的安装
- R语言 diag函数的用法