分火腿

分火腿

(hdogs.pas/.c/.cpp)

时间限制:1s;空间限制 64MB

题目描述:

小月言要过四岁生日了,她的妈妈为她准备了n根火腿,她想将这些火腿均分给m位小朋友,所以她可能需要切火腿。为了省事,小月言想切最少的刀数,使这n根火腿分成均等的m份。请问最少要切几刀?

输入描述:

第一行一个整数T,表示有T组数据。

接下来T组数据,每组共一行,有两个数字n,m。

输出描述:

每组数据一行,输出最少要切的刀数。

样例输入:

3

2 6

3 4

6 2

样例输出:

4

3

0

数据范围:

100%的数据保证T<=1000;n,m<=2147483647。

【题目分析】

这题就是找规律呀,反正我是这么搞的,数据类型...int就可以

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int t;
long long n,m;
long long ans;
int gcd(int x,int y)
{
    if(y==0) return x;
    if(x<y) return gcd(y,x);
    else return gcd(y,x%y);
}
int main()
{
    freopen("hdogs.in","r",stdin);
    freopen("hdogs.out","w",stdout);
    scanf("%d",&t);
    while(t--)
    {
        scanf("%lld%lld",&n,&m);
        if(n%m==0)
            ans=0;
        else if(m%n==0)
            ans=n*(m/n-1);
        else
            ans=m-gcd(n,m);
        printf("%lld\n",ans);
    }
    fclose(stdin);fclose(stdout);
    return 0;
}
时间: 2024-10-24 11:41:07

分火腿的相关文章

分火腿(C++)

#include<iostream>#include<cstring>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>#define mod 1000000007#define ll long long using namespace std;int T;int n,m;int read(){ int x=0,f=1;char ch=getchar(

一个简单的文件管理程序

IEEE Spectrum 杂志发布了一年一度的编程语言排行榜,这也是他们发布的第四届编程语言 Top 榜. 据介绍,IEEE Spectrum 的排序是来自 10 个重要线上数据源的综合,例如 Stack Overflow.Twitter.Reddit.IEEE Xplore.GitHub.CareerBuilder 等,对 48 种语言进行排行. 与其他排行榜不同的是,IEEE Spectrum 可以让读者自己选择参数组合时的权重,得到不同的排序结果.考虑到典型的 Spectrum 读者需求

c# partial 分部类和分部方法

一.partial 它是一个关键字修饰符.可以将类或结构.接口或方法的定义拆分到两个或更多个源文件中. 每个源文件包含类型或方法定义的一部分,编译应用程序时将把所有部分组合起来.修饰符不可用于委托或枚举声明中. 二.分部类 在以下几种情况下需要拆分类定义: 处理大型项目时,使一个类分布于多个独立文件中可以让多位程序员同时对该类进行处理. 使用自动生成的源时,无需重新创建源文件便可将代码添加到类中. Visual Studio 在创建 Windows 窗体.Web 服务包装器代码等时都使用此方法.

MySQL分库分表方案

1. MySQL分库分表方案 1.1. 问题: 1.2. 回答: 1.2.1. 最好的切分MySQL的方式就是:除非万不得已,否则不要去干它. 1.2.2. 你的SQL语句不再是声明式的(declarative) 1.2.3. 你招致了大量的网络延时 1.2.4. 你失去了SQL的许多强大能力 1.2.5. MySQL没有API保证异步查询返回顺序结果 1.2.6. 总结 MySQL分库分表方案 翻译一个stackoverflow上的问答,关于分库分表的缺点的,原文链接: MySQL shard

数据库分库分表

1. 数据库分库分表 1.1. 前言 1.1.1. 名词解释 1.2. 数据库架构演变 1.3. 分库分表前的问题 1.3.1. 用户请求量太大 1.3.2. 单库太大 1.3.3. 单表太大 1.4. 分库分表的方式方法 1.4.1. 垂直拆分 1.4.2. 水平拆分 1.5. 分库分表后面临的问题 1.5.1. 事务支持 1.5.2. 多库结果集合并(group by,order by) 1.5.3. 跨库join 1.6. 分库分表方案产品 1.7. 为什么不建议分库分表 1.8. 参考

《西游记》《封神榜》各路神仙基本层次图,不要再傻傻分不清楚了

<西游记><封神榜>各路神仙基本层次图 看<西游记>及<封神榜>常常被里面的神仙名称眼花缭乱,现总结如下: *第一级:创始元灵 宇宙诞生之初,有一先天混元之元灵,灵窍初开,"创始元灵"成为宇宙间唯一无上灵力,创始元灵分别传授给四个小生灵一门修行的法门:老大"鸿钧老祖",修玄清气:老二"混鲲祖师",修玄灵气:老三"女娲娘娘",修玄空气:老四"陆压道君",修玄明气

Mysql分表分库分析

对于大型的互联网应用,数据库单表的数据量可能达到千万甚至上亿级别,同时面临这高并发的压力.Master-Slave结构只能对数据库的读能力进行扩展,写操作还是集中在Master中,Master并不能无限制的挂接Slave库,如果需要对数据库的吞吐能力进行进一步的扩展,可以考虑采用分库分表的策略. 1.分表 在分表之前,首先要选中合适的分表策略(以哪个字典为分表字段,需要将数据分为多少张表),使数据能够均衡的分布在多张表中,并且不影响正常的查询.在企业级应用中,往往使用org_id(组织主键)做为

Tmux Linux 分屏工具

刚进入IT行业做Linux运维,小白一枚.在公司发现有同事使用mac操作linux系统界面时,可以使用快捷键分屏,于是自己在网上找了一下linux相关的分屏工具. Tmux是一个键盘驱动的终端分屏工具,可以替代Linux下的screen.当然,如果是在Mac下使用的话,它的核心功能(例如window,分屏等)也是可以被iTerm2替代的,不过好在Tmux在unix操作系统中足够通用,用包管理工具(apt-get, brew等)即可安装,所以了解并熟练使用它,还是能为平时终端下的工作节省不少时间的

Java web--Filter过滤器分IP统计访问次数

分IP统计访问次数即网站统计每个IP地址访问本网站的次数. 分析 因为一个网站可能有多个页面,无论哪个页面被访问,都要统计访问次数,所以使用过滤器最为方便. 因为需要分IP统计,所以可以在过滤器中创建一个Map,使用IP为key,访问次数为value.当有用户访问时,获取请求的IP,如果IP在Map中存在,说明以前访问过,那么在访问次数上加1,即可:IP在Map中不存在,那么设置次数为1. 那么问题来了! 问题一:为什么使用Map存放? Map是一个由键值对组成的数据结构,其中所有的key组成一