UVa11549 - Calculator Conundrum (Floyd判圈法)

简介: UVa11549 - Calculator Conundrum (Floyd判圈法)
importjava.io.IOException;
importjava.io.FileInputStream;
importjava.io.InputStreamReader;
importjava.io.BufferedReader;
importjava.io.PrintWriter;
importjava.io.OutputStreamWriter;
importjava.io.StreamTokenizer;
publicclassMain{
publicstaticbooleanDEBUG=false;
publicBufferedReadercin;
publicPrintWritercout;
publicStreamTokenizertokenizer;
publiclongn, k;
publicvoidinit()
    {
try {
if (DEBUG) {
cin=newBufferedReader(newInputStreamReader(
newFileInputStream("d:\\OJ\\uva_in.txt")));
            } else {
cin=newBufferedReader(newInputStreamReader(System.in));
            }
        } catch (IOExceptione) {
        }
cout=newPrintWriter(newOutputStreamWriter(System.out));
tokenizer=newStreamTokenizer(cin);
    }
publicStringnext()
    {
try {
tokenizer.nextToken();
//System.out.println("ttype:" + tokenizer.ttype);if (tokenizer.ttype==StreamTokenizer.TT_EOF)
returnnull;
elseif (tokenizer.ttype==StreamTokenizer.TT_WORD)
returntokenizer.sval;
elseif (tokenizer.ttype==StreamTokenizer.TT_NUMBER) 
returnString.valueOf((int)tokenizer.nval);
        } catch (IOExceptione) {
        }
returnnull;
    }
publicvoidinput()
    {
try {
n=Long.parseLong(next());
k=Long.parseLong(next());
        } catch (Exceptione) {
        }
    }
publicintconvert(longnum)
    {
int[] buf=newint[30];
intlen=0;
longtmp=num*num;
while (tmp!=0) {
buf[len++] = (int)(tmp%10);
tmp/=10;
        }
longtmpn=n;
if (tmpn>len) {
tmpn=len;
        }
intans=0;
for (longi=0; i<tmpn; i++) {
ans=ans*10+buf[--len];
        }
returnans;
    }
publicvoidsolve()
    {
longk1=k, k2=k;
longans=k;
do {
k1=convert(k1);
k2=convert(k2);
if (k2>ans) ans=k2;
k2=convert(k2);
if (k2>ans) ans=k2;
        } while (k1!=k2);
cout.println(ans);
cout.flush();
    }
publicstaticvoidmain(String[] args)
    {
try {
Mainsolver=newMain();
solver.init();
intt=Integer.parseInt(solver.next());
while (t-->0) {
solver.input();
solver.solve();
            }
        } catch (Exceptione) {
        }
    }
}
目录
相关文章
蓝桥杯之单片机学习(十八)——555定时器与频率测量
蓝桥杯之单片机学习(十八)——555定时器与频率测量
1367 0
蓝桥杯之单片机学习(十八)——555定时器与频率测量
|
2月前
|
传感器 人工智能 供应链
智能体未来发展趋势:对标国家“十四五”AI规划的技术方向研判
《智能体技术发展白皮书(2024)》指出,自主、多模态、行业化智能体将成为未来三年核心方向。自主智能体实现动态决策,提升制造效率;多模态智能体优化人机交互,覆盖智能家居等场景;行业化智能体深度融合医疗、金融、教育等领域,推动数字化转型。预计2027年行业市场规模超800亿元,助力国家人工智能战略落地。(238字)
|
SQL XML 前端开发
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
289 0
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
|
数据采集 传感器 存储
数据采集
【6月更文挑战第16天】数据采集。
480 12
|
C语言
随机读写数据文件
随机读写数据文件
194 1
|
网络安全 安全 数据安全/隐私保护
网站认证的类型有哪些?
【6月更文挑战第2天】网站认证的类型有哪些?
314 0
|
传感器 物联网 区块链
未来交织:新兴技术的综合趋势与跨界应用
【4月更文挑战第25天】 随着科技的迅猛发展,新兴技术如区块链、物联网(IoT)、虚拟现实(VR)等正在不断突破原有的边界,形成交互式的创新网络。本文将深入探讨这些技术的独立发展趋势以及它们如何相互融合,共同塑造未来社会的多个方面。通过对这些技术在金融、医疗、教育、娱乐等行业应用案例的分析,揭示它们如何推动产业升级,优化用户体验,并促进经济的持续增长。
|
SQL 关系型数据库 MySQL
MYSQL分页查询时没有用ORDER BY出现数据重复的问题
MYSQL分页查询时没有用ORDER BY出现数据重复的问题
475 0
|
网络协议 网络架构
eNSP DHCP的配置
模拟华为设备中,路由器-交换机-PC三台设备,路由器作为DHCP服务器,PC作为DHCP客户端