Repeating Decimals UVA - 202---求循环部分
原题链接:https://vjudge.net/problem/UVA-202
题意:求一个数除以一个数商,如果有重复的数字(循环小数),输出,如果没有,输出前50位。
题解:这个题一开始考虑的是一个一个判,但太麻烦,复杂度太高,于是转化思路,如果是循环小数,那么余数与之前的相同,那么只需要统计余数是否相同,及其所出现的位置
ac代码
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int xiao[3110],yu[3110];
int main()
{
int m,z;
while(cin>>m>>z)
{
int i,j,flag=1,zheng=m/z;
memset(yu,0,sizeof(yu));
memset(xiao,0,sizeof(xiao));
printf("%d/%d = %d.",m,z,zheng);
for(i=0;i<z;i++)
{
m=m%z;
yu[i]=m;
m*=10;
xiao[i]=m/z;
for(j=0;j<i;j++)
if(yu[i]==yu[j]){flag=0;break;}
if(flag==0) break;
}
int w=j;
for(int k=0;k<w;k++)
cout<<xiao[k];
cout<<"(";
if(i-j<=50)
{
for(w=j;w<i;w++)
cout<<xiao[w];
}
else
{
for(w=j;w<j+50;w++)
cout<<xiao[w];
cout<<"...";
}
cout<<")"<<endl;
printf(" %d = number of digits in repeating cycle\n\n",i-j);
}
return 0;
}
最新文章
- SQL优化 查询语句中,用 inner join 作为过滤条件和用where作为过滤条件的区别
- 【代码笔记】iOS-平面化的饼图
- 简单的JS控制button颜色随点击更改
- html5 可以讓使用者輸入url網址 ,去play影片
- C语言细节——献给初学者(二)
- NY 269 VF
- rsyslog 详解3
- 将sql数据库逆向生成PDM模型
- 【2013杭州区域赛】部分题解 hdu4770—4780
- Linux内核2.6的进程调度
- 4.windows环境下如何安装memcached教程(转载+自己整理)
- Android 最简单的测试UI卡顿
- sql语句case when 以及left()
- MySQL——基础操作
- 3分钟看完Java 8——史上最强Java 8新特性总结之第一篇 函数式编程基础
- memcached协议解析
- 查找->;静态查找表->;分块查找(索引顺序表)
- [Html] jQuery Grid
- 7.adb安装
- Android Caused by: java.lang.IllegalArgumentException: column &#39;_id&#39; does not exist
热门文章
- 利用xampp集成环境搭建pikachu靶场及部分问题解决
- Spring9——通过用Aware接口使用Spring底层组件、环境切换
- xshell界面变成半透明的怎么办?
- Python并发编程理论篇
- jQurey zTree API 3.5
- BZOJ3242 快餐店
- Linux查看docker容器日志
- 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP) 并发调试之MySQL配置
- redis.cluster/memcached.cluster/wmware esxi
- Prince and princess——需要优化的DP