相遇周期

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3382    Accepted Submission(s): 1734

Problem Description
2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了《中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火卫一合作的协议》,确定中俄双方将于2009年联合对火星及其卫星“火卫一”进行探测。

而卫星是进行这些探测的重要工具,我们的问题是已知两颗卫星的运行周期,求它们的相遇周期。

 
Input
输入数据的第一行为一个正整数T, 表示测试数据的组数. 然后是T组测试数据. 每组测试数据包含两组正整数,用空格隔开。每组包含两个正整数,表示转n圈需要的天数(26501/6335,表示转26501圈要6335天),用'/'隔开。
 
Output
对于每组测试数据, 输出它们的相遇周期,如果相遇周期是整数则用整数表示,否则用最简分数表示。
 
Sample Input
2
26501/6335 18468/42
29359/11479 15725/19170
题目的意思凝练一下,就是求两个分数的最小公倍数。
思路,你先写两个简单的分数,比如我写了 1/2和3/2 那么显而易见最小公倍数就是3/2 然后根据数学规律,可以得出,两个分数的最小公倍数应该是 分子=两个分子的最小公倍数 分母=两个分子的最大公约数(前提条件是分子分母都是最简的) 求最简 就是分子分母同时除以 他们的gcd
还有个要注意的地方就是,在用gcd函数返回的时候,要注意一下,找个变量存一下,不然直接除会报错。基本就是这样。
附上代码:
#include <iostream>
#include<math.h>
#include <iomanip>
#include<cstdio>
#include<string>
#include<map>
#include<vector>
#include<list>
#include<algorithm>
#include<stdlib.h>
#include<iterator>
#include<sstream>
#include<string.h>
#include<stdio.h>
using namespace std; long long gcd(long long a,long long b)
{
long long big=a;
long long smal=b;
long long ck;
if(big<smal)
{
ck=a;
a=b;
b=a;
}
long long temp;
while(smal>)
{
temp=big%smal;
big=smal;
smal=temp;
}
return big;
} long long gys(long long a,long long b)
{
long long kk;
long long ak=a;
long long bk=b;
kk=ak*bk/gcd(ak,bk);
return kk;
} int main()
{
int n;
cin>>n;
while(n--)
{
//首先看到这么大的数据 就想到要不要用long long
long long m,n,x,y;
long long fenzi,fenmu;
char aa,bb;
cin>>m>>aa>>n>>x>>bb>>y; long long aa1=gcd(m,n);//然后就是函数的返回值最好
m=m/aa1; //找个变量存一下 我不知道
n=n/aa1; //为什么不用变量存就会报错 long long aa2=gcd(x,y);
x=x/aa2;
y=y/aa2; fenzi=gys(m,x);
fenmu=gcd(n,y); //long long a33=gcd(fenzi,fenmu); 我注释掉这几行
//fenzi=fenzi/a33; 还是能过
//fenmu=fenmu/a33; if(fenzi%fenmu==)
{
cout<<fenzi<<endl;
}
else
{
cout<<fenzi<<"/"<<fenmu<<endl;
} } return ;
}
 
 

杭电ACM 1713 相遇周期的更多相关文章

  1. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  2. 杭电acm阶段之理工大版

    想參加全国软件设计大赛C/C++语言组的同学,假设前一篇<C和指针课后练习题总结>没看完的,请先看完而且依照上面的训练做完,然后做以下的训练. 传送门:http://blog.csdn.n ...

  3. 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”

    按 被中科大软件学院二年级研究生 HCOONa 骂为“误人子弟”之后(见:<中科大的那位,敢更不要脸点么?> ),继续“误人子弟”. 问题: 题目:(感谢 王爱学志 网友对题目给出的翻译) ...

  4. 杭电ACM(1002) -- A + B Problem II 大数相加 -提交通过

    杭电ACM(1002)大数相加 A + B Problem II Problem DescriptionI have a very simple problem for you. Given two ...

  5. 杭电ACM题单

    杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...

  6. 杭电acm习题分类

    专注于C语言编程 C Programming Practice Problems (Programming Challenges) 杭电ACM题目分类 基础题:1000.1001.1004.1005. ...

  7. 2017杭电ACM集训队单人排位赛 - 6

    2017杭电ACM集训队单人排位赛 - 6 排名 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 59 1 X X 1 1 X X 0 1 ...

  8. 杭电acm 1076题

    水题,一个求闰年的题目,复习一下闰年的求法.... 1,如果能被4整除但不能被100整除的是闰年 2,能被400整除的是闰年 题目大意是:给定一个开始年份T以及一个正数N,要求求出从T开始,到了哪一年 ...

  9. 杭电acm 1037题

    本题应该是迄今为止最为简单的一道题,只有一组输入,输出也简单.... /****************************************** 杭电acm 1037题 已AC ***** ...

随机推荐

  1. gulp常用插件之gulp-rev-delete-origina使用

    更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-rev-delete-origina这是一款删除由gulp-rev或 gulp-rev-all重写的原始文件 . 更多使用文档请点击访问 ...

  2. sql-labs 18-20(sqlmap注入)

    这三题主要是关于HTTP头部的注入 常见的HTTP注入点产生位置为 [Referer].[X-Forwarded-For].[Cookie].[X-Real-IP].[Accept-Language] ...

  3. waiting list

    Problem: how to cluster non-stationary multivariate time series. What are stationary time series How ...

  4. Canvas如何绘制精美的图?

    一.Canvas的基本使用 首先在使用Canvas一般先在<body>中添加: <canvas id="></canvas> 然后使用Js进行获取canv ...

  5. Winform中怎样设置ContextMenuStrip右键菜单的选项ToolStripMenuItem添加照片

    场景 怎样在Winform程序中添加鼠标右键时使子选项显示图片. 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序猿 获取编程 ...

  6. 二叉堆(2)LeftistHeap

    左倾堆,用于堆的快速合并. 规则: ① 节点的键值小于或等于它的左右子节点的键值. ② 节点的左孩子的NPL >= 右孩子的NPL. ③ 节点的NPL = 它的右孩子的NPL + 1. 测试文件 ...

  7. jQuery---基本的选择器

    基本选择器 名称 用法 描述 ID选择器 $(“#id”); 获取指定ID的元素 类选择器 $(“.class”); 获取同一类class的元素 标签选择器 $(“div”); 获取同一类标签的所有元 ...

  8. 怎么压缩PPT大小?

    PPT体积过大有几个原因: 1.母版内版式过多.解决方法:①点击“视图”选项卡下的“幻灯片母版”:②删除左边没必要的版式. 2.图片质量太大.解决方法:①选中任意一张图片:②点击“图片工具”的“格式” ...

  9. 用数学解赌博问题不稀奇,用赌博解数学问题才牛B

    有一个经典的概率问题:平均需要抛掷多少次硬币,才会首次出现连续的 n 个正面?它的答案是 2^(n+1) – 2 .取 n=2 的话,我们就有这样的结论:平均要抛掷 6 次硬币,才能得到两个连续的正面 ...

  10. Coursera 吴恩达 机器学习 学习笔记

    Week 1 机器学习笔记(一)基本概念与单变量线性回归 Week 2   机器学习笔记(二)多元线性回归 机器学习作业(一)线性回归——Matlab实现 机器学习作业(一)线性回归——Python( ...