lightoj 1282 取对数的操作
/*
前三位
len=log10n^k(乘积的长度)
len=klog10n
n^k=x*10^(len-1)
x=n^k/10^(len-1)
log10x = k*log10n - (len-1)
x=pow(10,k*log10n - (len-1)) 后三位
快速幂解决
*/
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n,k,x;
ll power(ll a,ll n){
ll res=;
while(n){
if(n%)res=res*a%;
a=a*a%;
n>>=;
}
return res%;
}
int main(){
int T;
cin>>T;
for(int tt=;tt<=T;tt++){
cin>>n>>k;
ll len=k*log10((double)n);
double x=pow((double),(double)k*log10((double)n)-(len-));
while(x<)x*=;
printf("Case %d: %d ",tt,(int)x);
n%=;
ll y=power(n,k);//后三位用快速幂
if(y==)printf("000\n");
else if(y<)printf("00%d\n",y);
else if(y<)printf("0%d\n",y);
else printf("%d\n",y);
}
}
lightoj 1282 取对数的操作的更多相关文章
- LightOJ - 1282 - Leading and Trailing(数学技巧,快速幂取余)
链接: https://vjudge.net/problem/LightOJ-1282 题意: You are given two integers: n and k, your task is to ...
- lightoj 1282 && uva 11029
Leading and Trailing lightoj 链接:http://lightoj.com/volume_showproblem.php?problem=1282 uva 链接:http:/ ...
- LightOJ 1282 Leading and Trailing (快数幂 + 数学)
http://lightoj.com/volume_showproblem.php?problem=1282 Leading and Trailing Time Limit:2000MS Me ...
- Leading and Trailing LightOJ - 1282 题解
LightOJ - 1282 Leading and Trailing 题解 纵有疾风起 题目大意 题意:给你一个数n,让你求这个数的k次方的前三位和最后三位. \(2<=n<2^{31} ...
- 【每日一题】 UVA - 11809 Floating-Point Numbers 阅读题+取对数处理爆double
https://cn.vjudge.net/problem/UVA-11809 题意:很长orz 题解:算一下输入范围,发现用double是读不进来的,在这里wa了半天,(double 1e300 ...
- hdu 1568 (log取对数 / Fib数通项公式)
hdu 1568 (log取对数 / Fib数通项公式) 2007年到来了.经过2006年一年的修炼,数学神童zouyu终于把0到100000000的Fibonacci数列 (f[0]=0,f[1]= ...
- 【取对数】【哈希】Petrozavodsk Winter Training Camp 2018 Day 1: Jagiellonian U Contest, Tuesday, January 30, 2018 Problem J. Bobby Tables
题意:给你一个大整数X的素因子分解形式,每个因子不超过m.问你能否找到两个数n,k,k<=n<=m,使得C(n,k)=X. 不妨取对数,把乘法转换成加法.枚举n,然后去找最大的k(< ...
- poj2661 Factstone Benchmark(大数不等式同取对数)
这道题列出不等式后明显是会溢出的大数,但是没有必要写高精度,直接两边取对数(这是很简明实用的处理技巧)得: log2(n!)=log2(n)+log2(n-1)+...+log2(1)<=log ...
- HDU3666 THE MATRIX PROBLEM (差分约束+取对数去系数)(对退出情况存疑)
You have been given a matrix C N*M, each element E of C N*M is positive and no more than 1000, The p ...
随机推荐
- Web项目笔记(一)JSONP跨域请求及其概念
https://blog.csdn.net/u014607184/article/details/52027879 https://blog.csdn.net/saytime/article/deta ...
- java ArrayList、Vector、LinkedList区别
- ps遇到的技术问题列表
1.ps矩形选框显示像素 CTRL+K 进入首选项设置就可以了. 2.ps显示辅助线 页面工具栏上的视图按钮,我们在列表上找到标尺,我们也是可以快捷键选择CtrI+R 3.如何将插入photoshop ...
- gradle记录
set-env.bat set "JAVA_HOME=G:\jdk" set "CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\ ...
- Trickbot展示新技巧:密码抓取器模块
Trickbot是一个简单的银行木马 来源 https://blog.trendmicro.com/trendlabs-security-intelligence/trickbot-adds-remo ...
- MySQL软件基本管理
1. 忘记密码 windows平台下,5.6.43版本mysql # 关闭mysql # 在cmd中执行:mysqld --skip-grant-tables # 在cmd中执行:mysql # 执行 ...
- asyncio Queue的使用例子
import aiohttp import asyncio import async_timeout from urllib.parse import urljoin, urldefrag root_ ...
- linux shell 之尝试编写 企业级 启动脚本
企业Shell面试题10:开发企业级MySQL启动脚本 说明: MySQL启动命令为: 1 /bin/sh mysqld_safe --pid-file=$mysqld_pid_file_path 2 ...
- Flask请求流程超清大图
补充一下 request是在哪里产生的: class RequestContext(object): # app就是flask对象 self.app = app if request is None: ...
- C#winform 窗体缩放自适应
1. 首先在窗体上放上一个Panel容器,并将容器的Dock属性设为Fill,即所有的控件都放在了这个容器里. using System; using System.Collections.Gene ...