[LUOGU] P2759 奇怪的函数
题目描述
使得 x^x x
x
达到或超过 n 位数字的最小正整数 x 是多少?
输入输出格式
输入格式:
一个正整数 n
输出格式:
使得 x^xx
x
达到 n 位数字的最小正整数 x
输入输出样例
输入样例#1: 复制
11
输出样例#1: 复制
10
说明
n<=2000000000
这么大肯定有规律。。嗯.
求数x的位数,常规做法是写一个函数求,但是这就要求得到这个具体的这个数,这里x^x太大,如果不用高精度,肯定是不行的。
考虑一个数x,求它的位数:
log10(1)=0;
log10(10)=1;
log10(100)=2;
每10倍函数值加1,且单调递增,所以,比如log10(5)≈0.699,就可以写出一个len函数
len=floor(log(x)+1);
先+1再floor而不用ceil,实测#7会WA,大概是类似log10(1)的问题。
再考虑求x^x的位数,log(x^x)=xlog(x)
有了判断函数,就不难写出一个二分答案的循环。
注意l=mid+1,否则会陷入死循环。
#include<iostream>
#include<cmath>
using namespace std;
typedef long long ll;
ll n;
ll len(ll x){
return floor(x*log10(x)+1);
}
int main(){
cin>>n;
ll l=1,r=1<<30,mid,lenm;
while(l<r){
mid=(l+r)>>1;
lenm=len(mid);
if(lenm<n) l=mid+1;
else r=mid;
}
cout<<l<<endl;
return 0;
}
[LUOGU] P2759 奇怪的函数的更多相关文章
- luogu P2759 奇怪的函数 |二分答案
题目描述 使得 x^x达到或超过 n 位数字的最小正整数 x 是多少? 输入格式 一个正整数 n 输出格式 使得 x^x达到 n 位数字的最小正整数 x 计算一个数有多少位 log10(x)+1 #i ...
- 洛谷P2759 奇怪的函数
P2759 奇怪的函数 题目描述 使得 x^x 达到或超过 n 位数字的最小正整数 x 是多少? 输入输出格式 输入格式: 一个正整数 n 输出格式: 使得 x^x 达到 n 位数字的最小正整数 x ...
- 【Luogu】P2759奇怪的函数(二分)
题目链接 看了题解之后突然发现这题简直是水题.然而不看题解就想不出来.为什么呢? len(x)=log10(x)+1 于是二分寻找x. #include<iostream> #includ ...
- 洛谷 P2759 奇怪的函数
https://www.luogu.org/problemnew/show/P2759 #include<cstdio> #include<algorithm> #includ ...
- 洛谷P2759 奇怪的函数(log 二分)
题目描述 使得 x^xxx 达到或超过 n 位数字的最小正整数 x 是多少? 输入输出格式 输入格式: 一个正整数 n 输出格式: 使得 x^xxx 达到 n 位数字的最小正整数 x 输入输出样例 输 ...
- P2759 奇怪的函数
题目描述 使得 x^x 达到或超过 n 位数字的最小正整数 x 是多少? 输入输出格式 输入格式: 一个正整数 n 输出格式: 使得 x^x 达到 n 位数字的最小正整数 x 输入输出样例 输入样例# ...
- 奇怪的函数 (codevs 3538/1696) 题解
[题目描述] 给定n,使得x^x达到或超过n位数字的最小正整数x是多少? [样例输入] 11 [样例输出] 10 [解题思路] 首先想到枚举,但是范围有点大,n<=2*10^9,果断用二分.其实 ...
- 【Luogu2759】奇怪的函数(数论)
[Luogu2759]奇怪的函数(数论) 题面 题目描述 使得 \(x^{x}\)达到或超过 n 位数字的最小正整数 x 是多少? 输入输出格式 输入格式: 一个正整数 n 输出格式: 使得 \(x^ ...
- cogs 558 奇怪的函数
提交地址:http://cojs.tk/cogs/problem/problem.php?pid=558 558. 奇怪的函数 ★☆ 输入文件:xx.in 输出文件:xx.out 简单对比 ...
随机推荐
- app发布证书、真机调试证书、测试证书、推送证书详细过程
原文网址: http://www.cnblogs.com/cxbblog/p/4028159.html 一:发布证书 遵旨:哪个开发者的哪台电脑要发布哪个app (这句话可以多读几遍) 通过上边的遵旨 ...
- 黑马MySQL数据库学习day01 安装多个版本MySQL mysqld.exe工具
- B. Lecture Sleep( Educational Codeforces Round 41 (Rated for Div. 2))
前缀后缀和搞一搞,然后枚举一下区间,找出最大值 #include <iostream> #include <algorithm> using namespace std; ; ...
- 快速删除node_modules文件夹
前言 当安装了较多模块后,node_modules目录下的文件会很多,直接删除整个目录会很慢,下面介绍些快速删除node_modules目录的方法. 方法一:使用rimraf模块的命令 在全局安装ri ...
- c# JsonReader读取json字符串
使用JsonReader读Json字符串: string jsonText = @"{""input"" : ""val ...
- Tinghua Data Mining 3
特征选择 男女身高 男女抽烟 先验分布 熵 衡量系统的不确定性 属性的价值 降低了不确定性 降低的幅度越高越好 主成分分析 旋转是的数据间的correlation消失掉 Q是正交阵 七长八短,长宽相关 ...
- Integer一类的比较问题
总体主要分为两个方面 ①比较的是值 一.基本数据类型与引用数据类型进行比较时,引用数据类型会进行拆箱(自动拆装箱需要在jdk1.5以上),然后与基本数据类型进行值的比较 举例: int i = 12; ...
- 104 Maximum Depth of Binary Tree 二叉树的最大深度
给定一个二叉树,找出其最大深度.二叉树的深度为根节点到最远叶节点的最长路径上的节点数.案例:给出二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / ...
- Spring AOP初步总结(二)
该篇为Spring AOP的一个应用案例:系统日志 需求:将任何删除,更改或新增数据库的操作汇总到数据库中 步骤1:编写切面 @Aspect @Component public class SysLo ...
- Java 图形界面开发--图文并茂建立学生管理系统
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/50932501 冷血之心的博客) 图形用户界面(Graphics U ...