UVa Problem Solution: 10077 - The Stern-Brocot Number System
来源:互联网 发布:爆笑段子知乎 编辑:程序博客网 时间:2024/04/19 15:56
Just like find a number in a binary search tree. The only trick is keeping record of the current node's left and right node to get to its child node.
Code:
- /*************************************************************************
- * Copyright (C) 2008 by liukaipeng *
- * liukaipeng at gmail dot com *
- *************************************************************************/
- /* @JUDGE_ID 00000 10077 C++ "The Stern-Brocot Number System" */
- #include <algorithm>
- #include <cstdio>
- #include <cstring>
- #include <deque>
- #include <fstream>
- #include <iostream>
- #include <list>
- #include <map>
- #include <queue>
- #include <set>
- #include <sstream>
- #include <stack>
- #include <string>
- #include <vector>
- using namespace std;
- typedef unsigned int uint;
- int main(int argc, char *argv[])
- {
- #ifndef ONLINE_JUDGE
- freopen((string(argv[0]) + ".in").c_str(), "r", stdin);
- freopen((string(argv[0]) + ".out").c_str(), "w", stdout);
- #endif
- for (uint m, n; cin >> m >> n && !(m == 1 && n == 1); ) {
- stringstream sb;
- for (uint numerator = 1, denomenator = 1, ln = 0, ld = 1, rn = 1, rd = 0;
- !(m == numerator && n == denomenator); ) {
- if (m * denomenator < n * numerator) { // m/n < numerator/denomenator
- sb << 'L';
- rn = numerator;
- rd = denomenator;
- numerator += ln;
- denomenator += ld;
- } else {
- sb << 'R';
- ln = numerator;
- ld = denomenator;
- numerator += rn;
- denomenator += rd;
- }
- }
- cout << sb.str() << '/n';
- }
- return 0;
- }
- UVa Problem Solution: 10077 - The Stern-Brocot Number System
- UVa Problem 10077 The Stern-Brocot Number System (Stern-Brocot 代数系统)
- UVa 10077 - The Stern-Brocot Number System
- uva 10077 The Stern-Brocot Number System
- UVA 10077 The Stern-Brocot Number System
- UVa 10077 The Stern-Brocot Number System (数学)
- 10077 - The Stern-Brocot Number System
- 110507 The Stern-Brocot Number System
- (挑战编程_5_7)The Stern-Brocot Number System
- The Stern-Brocot Number System(排序二叉树)
- Hdu 6209 The Intersection(Stern-Brocot tree+二分)
- hdu 4556 Stern-Brocot
- hdu4556-Stern-Brocot Tree
- hdu4556-Stern-Brocot Tree
- UVa Problem Solution: 10044 - Erdos Number
- UVa Problem Solution: 10137 - The Trip
- UVa Problem Solution: 10196 - Check The Check
- UVa Problem Solution: 10254 - The Priest Mathematician
- 2008年11月24号_一_阴_头晕
- VFP中对RGB和RGBComp函数的解释
- 转Oracle Tuning (Oracle 性能调整)的一些总结
- 鼠标单击变双击修正工具软件DoubleClickFix下载
- 在PB中调用其它语言开发的DLL动态链接库
- UVa Problem Solution: 10077 - The Stern-Brocot Number System
- 树的序列化(visio图片无法粘帖,只好把整个文档当作图片贴上来)
- 使用.htaccess防止盗链
- php与js互传参数的问题
- sql server 安装时挂起解决办法
- 自动识别网页编码
- 鼠标经过时候打开,移动开以后DIV自动隐藏
- 焦点图片切换效果 兼容ie6 ie7 ff
- 杨致远:IT市场表现最差10位CEO之首