Codeforces Round #339 (Div. 2) A. Link/Cut Tree
2016-01-15 20:06
931 查看
A. Link/Cut Tree
Programmer Rostislav got seriously interested in the Link/Cut Tree data structure, which is based on Splay trees. Specifically, he is now studying the expose procedure.Unfortunately, Rostislav is unable to understand the definition of this procedure, so he decided to ask programmer Serezha to help him. Serezha agreed to help if Rostislav solves a simple task (and if he doesn't, then why would he need Splay trees anyway?)
Given integers l, r and k, you need to print all powers of number k within range from l to r inclusive. However, Rostislav doesn't want to spent time doing this, as he got interested in playing a network game called Agar with Gleb. Help him!
Input
The first line of the input contains three space-separated integers l, r and k (1 ≤ l ≤ r ≤ 1018, 2 ≤ k ≤ 109).
Output
Print all powers of number k, that lie within range from l to r in the increasing order. If there are no such numbers, print "-1" (without the quotes).
Sample test(s)
input
1 10 2
output
1 2 4 8
input
2 4 5
output
-1
Note
Note to the first sample: numbers 20 = 1, 21 = 2, 22 = 4, 23 = 8 lie within the specified range. The number 24 = 16 is greater then 10, thus it shouldn't be printed.
/*G++ 5.1.0 通过*/ #include<cstdio> #include<cstring> #include<stack> #include<iterator> #include<queue> #include<cmath> #include<set> #include<vector> #include<iostream> #include<map> #include<string> #include<algorithm> using namespace std; typedef long long ll; typedef unsigned long long ull; int main() { ull l,r,k; scanf("%I64d%I64d%I64d",&l,&r,&k); int i; for(i=0;i<64;i++) if((pow(k*1.0,i)>=l))break; bool ok=0; for(;i<64;i++) { ll t=pow(k*1.0,i); if(t<=r) ok=1,printf("%I64d ",t); else break; } if(!ok)puts("-1"); return 0; }
相关文章推荐
- java基础总结
- There is no Action mapped for namespace [/] and action name [user!add] associated with context path
- loadView 再思考
- Android UI之ImageSwitcher && TextSwitcher 实现图文翻页
- 指针数组和数组指针的声明形式
- zookeeper的集群模式下的安装和配置
- 自己做的一个输入输出缓冲池
- Jenkins+Maven+Git CI环境搭建手册
- 对象封装属性的真正源头
- 离散数学及其应用 前言
- Django+Query
- ansible中文手册-基础模块使用
- Codeforces Round 610
- C语言 calloc, malloc, realloc ,alloca以及 free的用法
- ansible中文手册-基础模块使用
- 数据预处理之独热编码(One-Hot Encoding)
- Dissecting Message Queues(不同消息中间件Throughput和latency
- HDU5536 Chip Factory(字典树)
- 关于session
- Java源码之HashMap