小紫书 习题 3-8(UVA 202) 循环小数(Repeating Decimals)
2015-11-08 18:34
435 查看
n除以m的余数只能是0~m-1,根据鸽笼原理,当计算m+1次时至少存在一个余数相同,
即为循环节;存储余数和除数,输出即可。
额,就是模拟题,具体过程就模拟除法的运算就好。
嗯,,,输出应该是一次会输入多组数据,被这里卡了一下,读错了一句题意,被卡了一下(活该我没过六级),好久没做题,手生了。。。
AC代码:
即为循环节;存储余数和除数,输出即可。
额,就是模拟题,具体过程就模拟除法的运算就好。
嗯,,,输出应该是一次会输入多组数据,被这里卡了一下,读错了一句题意,被卡了一下(活该我没过六级),好久没做题,手生了。。。
AC代码:
#include <cstdio> #include <cstdlib> #include <cstring> #include <iostream> using namespace std; int chu[3000], yu[3000]; int main() { int a, b; while (scanf("%d%d", &a, &b) != EOF) { int t1, t2, t3, length = 0, cycle = -1, begin = -1; memset(chu, 0, sizeof(int) * 3000); memset(yu, 0, sizeof(int) * 3000); t2 = a / b; t3 = a%b; printf("%d/%d = %d", a, b, t2); if (t3 == 0) { printf(".(0)\n 1 = number of digits in repeating cycle\n\n"); } else { printf("."); while (1) { yu[length] = t3; t1 = t3 * 10; chu[length++] = t1 / b; t3 = t1%b; if (t3 == 0) break; else { bool flag = 0; for (int i = 0; i < length; i++) if (t3 == yu[i]) { flag = 1; begin = i; cycle = length - begin; break; } if (flag) break; } } if (begin == -1) { if (length <= 50) { for (int i = 0; i < length; i++) printf("%d", chu[i]); } else { for (int i = 0; i < 50; i++) printf("%d", chu[i]); printf("..."); } printf("(0)\n 1 = number of digits in repeating cycle\n\n"); } else { for (int i = 0; i < begin; i++) printf("%d", chu[i]); printf("("); if (begin + cycle >= 50) { for (int i = begin; i < 50; i++) printf("%d", chu[i]); printf("...)\n %d = number of digits in repeating cycle\n\n", cycle); } else { for (int i = begin; i < length; i++) printf("%d", chu[i]); printf(")\n %d = number of digits in repeating cycle\n\n", cycle); } } } } return 0; }
相关文章推荐
- PowerShell Function之获取process和NIC信息
- 表格单元格换行的问题
- 汇编笔记
- Xcode修改工程文件名字
- android activity的生命周期
- RecyclerView添加头部和底部
- 方法的重写与重载
- Protocol Informatics【基于网络轨迹的协议逆向工程文献学习】
- 抽象类和接口
- 深入理解Java内存模型(一)——基础
- React.js学习笔记
- ListView的属性及方法详解
- <React: Up and Running>阅读笔记 — The life of a component & Excel: a fancy table component
- Ubuntu中编译Android JellyBean 4.2.1源码出现Switch.pm出错信息的解决方法
- SpringMVC注解之看一眼
- ionic/angular中module探秘
- 脚 本 练 习 题(四)
- hdu5514Frogs 容斥
- MapKit大头针的基本使用
- 典型用户