Codeforces 614 A Link/Cut Tree
来源:互联网 发布:李选民淘宝上卖的真吗 编辑:程序博客网 时间:2024/05/01 18:24
传送门:http://codeforces.com/contest/614/problem/A
本题会暴long long
237171123124584251 923523399718980912 7150
这组数据得出了一个位于l,r之间的值,而实际上那个值应该是大于r的,本应输出-1,所以错了
还有一组数据,即
1 1000000000000000000 1000000000
应该在下一次有暴longlong的潜能时,及时终止,即不能少一次判断,将此判断写在for循环的终止条件里面,这样会少解的
学到了一个优美的方法解决此问题,即
#include<bits/stdc++.h>using namespace std;const int maxn=1e5+10;#define ll long longll l,r,k;vector<ll>vec;int main(){ /* ll ans=2613510006250000 */ cin>>l>>r>>k; ll ans=1ll; for(;ans<=(ll)1e18;){ if(ans>=l&&ans<=r){ vec.push_back(ans); } if(ans>((ll)(9e18))/k) break; ans=ans*k; } if(vec.size()==0) return puts("-1"); for(int i=0;i<vec.size()-1;i++){ cout<<vec[i]<<" "; } cout<<vec[vec.size()-1]<<endl; return 0;}
还有优美的写法,即利用r是在longlong范围内去判断
#include<bits/stdc++.h>using namespace std;const int maxn=1e5+10;#define ll long longll l,r,k;vector<ll>vec;int main(){ /* ll ans=2613510006250000 */ cin>>l>>r>>k; ll ans=1ll; for(;ans<=r;){ if(ans>=l){ vec.push_back(ans); } //if(ans>((ll)(9e18))/k) break; if(ans<=r/k) ans=ans*k; else break; } if(vec.size()==0) return puts("-1"); for(int i=0;i<vec.size()-1;i++){ cout<<vec[i]<<" "; } cout<<vec[vec.size()-1]<<endl; return 0;}
还有这种写法
ll limit = log(2e18) / log(double(k)); ll res = 1; ll count = 0; for (int i = 0; i <= limit; i++) { if (res >= l && res <= r) { cout << res << ' '; ++count; } res *= k; }
0 0
- Codeforces 614 A Link/Cut Tree
- codeforces 614A Link/Cut Tree
- CodeForces 614A Link/Cut Tree
- codeforces 614A Link/Cut Tree
- codeforces 614 A. Link/Cut Tree
- 【CodeForces】[614A]Link/Cut Tree
- CodeForces 614 A. Link/Cut Tree(水~)
- Codeforces--614A--Link/Cut Tree(数学)(暴力求解)
- CodeForces 614A. Link/Cut Tree【坑精度!!!】
- Codeforces-----614A---Link/Cut Tree---数学水题
- 614A Link/Cut Tree
- Link/Cut Tree CodeForces
- A. Link/Cut Tree
- Codeforce 614A Link/Cut Tree 水题
- Codeforces Round #339 (Div. 2) A. Link/Cut Tree
- Codeforces Round #339 (Div. 2) A.Link/Cut Tree
- Codeforces Round #339 (Div. 2) A. Link/Cut Tree
- Codeforces Round #339 (Div. 2) A. Link/Cut Tree - Codeforces(思维)
- oracle 安全与审计
- DarunGrim4安装使用说明
- C语言去除字符串首尾空格,trim()函数实现
- 通信基础
- 集算器协助MongoDB计算之交叉汇总
- Codeforces 614 A Link/Cut Tree
- 1040: [ZJOI2008]骑士 基环+内向树 DP
- 11gR2 DataGuard参数文件(pfile/spfile)设置模板
- 线程、互斥锁与条件变量实例理解
- Android自定义视图和属性
- 图片旋转,鼠标滚轮缩放,镜像,切换图片js代码
- 快速理解Docker - 容器级虚拟化解决方案
- 浅谈MVP架构及开发模式
- Poj 2251 Dungeon Master