hdu 1717
小数化分数2
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 3037 Accepted Submission(s): 1237
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<queue>
#include<map> #define N 1010
#define M 15
#define mod 1000000007
#define mod2 100000000
#define ll long long
#define maxi(a,b) (a)>(b)? (a) : (b)
#define mini(a,b) (a)<(b)? (a) : (b) using namespace std; int T;
char s[N];
int f1,f2; ll gcd(ll x,ll y)
{
if(y==)
return x;
return gcd(y,x%y);
} int main()
{
int i;
//freopen("data.in","r",stdin);
scanf("%d",&T);
getchar();
//for(int cnt=1;cnt<=T;cnt++)
while(T--)
//while(scanf("%d%d",&n,&q)!=EOF)
{
scanf("%s",s);
// getchar()
//printf(" %s\n",s);
int l=strlen(s);
int flag=;
f1=f2=;
ll x1;
ll a,x;
ll b=;
ll te;
a=;
x1=;
x=;
ll g1,g2;
ll y;
for(i=;i<l;i++){
if(flag==)
{
if(s[i]!='('){
f1=;
x1*=;
b*=;
b+=s[i]-'';
}
else{
flag=;
f2=;
}
}
else{
if(s[i]!=')'){
x*=;
a*=;
a+=s[i]-'';
}
}
// printf(" %d %d %I64d %I64d %I64d %I64d\n",i,flag,b,x1,a,x);
}
//printf(" %d %d %I64d %I64d %I64d %I64d\n",f1,f2,b,x1,a,x);
te=;
if(f1==){
g1=gcd(b,x1);
if(g1!=){
b/=g1;
te=x1;
x1/=g1;
}
} if(f2==){
y=x-;
y*=te;
g2=gcd(a,y);
if(g2!=){
a/=g2;
y/=g2;
}
} //printf(" %d %d %d %d\n",b,x1,a,y);
//printf(" %d %d %I64d %I64d %I64d %I64d\n",f1,f2,b,x1,a,y);
if( (f1+f2)==){
// y*=x1 ll c=(x1*a+y*b);
ll d=y*x1;
// printf(" %I64d/%I64d\n",c,d);
ll g3=gcd(c,d);
if(g3!=){
c/=g3;
d/=g3;
}
printf("%I64d/%I64d\n",c,d);
}
else{
if(f1==)
printf("%I64d/%I64d\n",b,x1);
else
printf("%I64d/%I64d\n",a,y);
} } return ;
}
hdu 1717的更多相关文章
- (小数化分数)小数化分数2 -- HDU --1717
链接: http://acm.hdu.edu.cn/showproblem.php?pid=1717 举例: 0.24333333…………=(243-24)/900=73/3000.9545454…… ...
- HDU 1717 小数化分数2 数学题
解题报告:输入一个小于1的小数,让你把这个数转化成分数,但注意,输入的数据还有无限循环的小数,循环节用一对括号包含起来. 之前还没有写过小数转分数的题,当然如果没有循环小数的话,应该比较简单,但是这题 ...
- HDU 1717 小数化分数2(最大公约数)
小数化分数2 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- C语言初学者代码中的常见错误与瑕疵(13)
https://www.cpfn.org/bbs/viewtopic.php?f=85&t=5940&sid=ccbcf716d21191452e7c08a97b502337& ...
- 【HDU】1717 小数化分数2 ——计数原理
小数化分数2 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- 转载:hdu 题目分类 (侵删)
转载:from http://blog.csdn.net/qq_28236309/article/details/47818349 基础题:1000.1001.1004.1005.1008.1012. ...
- poj和hdu部分基础算法分类及难度排序
最近想从头开始刷点基础些的题,正好有个网站有关于各大oj的题目分类(http://www.pythontip.com/acm/problemCategory),所以写了点脚本把hdu和poj的一些题目 ...
- HDOJ 2111. Saving HDU 贪心 结构体排序
Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- BZOJ 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式 [后缀数组]
1717: [Usaco2006 Dec]Milk Patterns 产奶的模式 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1017 Solved: ...
随机推荐
- Codeforces Round #317 (Div. 2) D Minimization (贪心+dp)
D. Minimization time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- CSS3与弹性盒布局
1.弹性盒布局对齐模式 1.1.弹性盒子 在规定弹性盒子之中的子级元素换行显示之前父级元素必须是弹性盒子模型,也就是设置 display 为 flex 代码如下: <!DOCTYPE html& ...
- 数组初始化 和 vector初始化
] = {}; 整个数组都初始化为0 vector<); 整个vector初始化为1 如果你定义的vector是这样定义的: vector<int> B; 去初始化,千万不要用: ; ...
- spring-security中的csrf防御机制(跨域请求伪造)
什么是csrf? csrf又称跨域请求伪造,攻击方通过伪造用户请求访问受信任站点.CSRF这种攻击方式在2000年已经被国外的安全人员提出,但在国内,直到06年才开始被关注,08年,国内外的多个大型社 ...
- nyoj-47-过河问题|POJ-1700-Crossing River
http://acm.nyist.net/JudgeOnline/problem.php?pid=47 http://poj.org/problem?id=1700 解题思路:求最少需要多少时间才能都 ...
- Bootstrap 原始按钮
Bootstrap 原始按钮 <!DOCTYPE html><html><head><meta http-equiv="Content-Type&q ...
- ES6变量解构赋值的用法
一.数组赋值(从数组中提取值,按照对应位置,对变量赋值) 1. 完全解构(变量与值数目相等) let arr = [1, 2, 3]; let [a,b,c] = arr; console.log(a ...
- POJ 2255 Tree Recovery——二叉树的前序遍历、后序遍历、中序遍历规则(递归)
1.前序遍历的规则:(根左右) (1)访问根节点 (2)前序遍历左子树 (3)前序遍历右子树 对于图中二叉树,前序遍历结果:ABDECF 2.中序遍历的规则:(左根右) (1)中序遍历左子树 (2)访 ...
- PAT 乙级 1005
题目 题目地址:PAT 乙级 1005 题解 本题主要就在于将一个数的一系列计算结果不重复地存储起来并便于检索,考虑到STL中的集合有相似的特性,使用set可以有效地简化代码和运算. 过程如下: (初 ...
- H5移动端触摸事件:touchstart、touchend、touchmove
第一部分代码事例: <html><head> <meta charset="utf-8"> <style> #main,#main1 ...