uva 11549
来源:互联网 发布:网络信息管理平台 编辑:程序博客网 时间:2024/05/16 19:05
这题主要学会了Floyd判圈法,以前判断循环用set检查,现在有了判圈法,复杂度低而且速度快。
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <sstream>#include <string>#include <cmath>#include <vector>using namespace std;int t;int buf[100];int next(int n,int k)//只是一个操作函数,不同的题不同的操作{ if(!k) return 0; long long k2=(long long )k*k; int l=0; while(k2>0)//数字每一位都存起来 { buf[l++]=k2%10; k2/=10; } if(n>l) n=l; int ans=0; for(int i=0;i<n;i++) ans=ans*10+buf[--l];//取前n位 return ans;}int main(){ cin >> t; while(t--) { int n,k; cin >> n >> k; int ans=k; int k1=k,k2=k; do { k1=next(n,k1);//第一个小孩,因为跑的慢,所以操作一次 k2=next(n,k2); if(k2>ans) ans=k2;//第二个小孩,跑得快,循环两次 k2=next(n,k2); if(k2>ans) ans=k2; }while(k1 != k2);//相等表示慢的被套圈也就是所有的情况遍历了一遍了 cout << ans <<endl; } return 0;}
阅读全文
0 0
- uva 11549
- UVA 11549
- uva 11549
- uva 11549
- UVa 11549
- uva 11549
- Uva-11549 - Calculator Conundrum
- UVA 11549 Calculator Conundrum
- Uva-11549-Calculator Conundrum
- uva 11549 - Calculator Conundrum
- UVA 11549 Calculator Conundrum
- uva 11549 CALCULATOR CONUNDRUM
- UVA 11549 Calculator Conundrum
- UVa 11549 - Calculator Conundrum
- UVA 11549 Calculator Conundrum
- UVA 11549 Calculator Conundrum
- UVA - 11549 Calculator Conundrum
- UVA-11549 Calculator Conundrum
- 文本排序的王者:玩透sort命令
- ajax编程的基本步骤
- POJ 2484 简单博弈
- 1285: Vegetable and Road again [最小生成树]
- 置换群Polya定理(poj 2409: Let it Bead)
- uva 11549
- 通过js写一个轮播图
- 上海证券交易所PBU升位历史
- Unity中UGUI的Toggle控件
- C#之进程 Process.Start()用法举例
- spring项目导入札记
- java细节知识点
- 学习笔记| AS入门(六) 碎片Fragment
- C#项目中遇到的问题归档