题意

3B04 Xiao 9*大战朱最学 0x3B「数学知识」练习

背景

Xiao 9*、朱最学、小全同属LOI,朱某某同学由于学习认真得到了小全的仰慕~~送其外号---朱最学。最学想:神牛我当不成难道还养不成?随后便出现了到Xiao 9*农场放牛的情况- -(灰常无语)。于是Xiao 9*与朱最学间的一场战争便开始了。。。

描述

自从朱最学~搞定了QQ农场以后,就开始捉摸去QQ牧场干些事业,不仅自己牧场养牛,还到Xiao 9*农场放牛- -!Xiao 9*很生气,有一次朱最学想知道Xiao 9*牧场奶牛的数量,于是Xiao 9*想狠狠耍朱最学一把。举个例子,假如有16头奶牛,如果建了3个牛棚,剩下1头牛就没有地方安家了。如果建造了5个牛棚,但是仍然有1头牛没有地方去,然后如果建造了7个牛棚,还有2头没有地方去。你作为Xiao 9*的私人秘书理所当然要将准确的奶牛数报给Xiao 9*,你该怎么办?

输入格式

第一行包含一个整数n (n <= 10) – 建立牛棚的次数,解下来n行,每行两个整数ai, bi( bi <= ai <= 1200000), 表示建立了ai个牛棚,有bi头牛没有去处。你可以假定ai,aj互质.

输出格式

输出包含一个正整数,即为Xiao 9*至少养奶牛的数目。

样例输入

3
3 1
5 1
7 2

样例输出

16

来源

LOI

代码

#include<bits/stdc++.h>
#define rg register
#define il inline
#define co const
template<class T>il T read(){
    rg T data=0,w=1;rg char ch=getchar();
    while(!isdigit(ch)) {if(ch=='-') w=-1;ch=getchar();}
    while(isdigit(ch)) data=data*10+ch-'0',ch=getchar();
    return data*w;
}
template<class T>il T read(rg T&x) {return x=read<T>();}
typedef long long ll;

co int N=11;
ll m[N],a[N];
ll exgcd(ll a,ll b,ll&x,ll&y){
    if(!b) return x=1,y=0,a;
    ll g=exgcd(b,a%b,y,x);
    return y-=a/b*x,g;
}
int main(){
//  freopen(".in","r",stdin),freopen(".out","w",stdout);
    int n=read<int>();
    m[0]=1;
    for(int i=1;i<=n;++i) m[0]*=read(m[i]),read(a[i]);
    ll ans=0;
    for(int i=1;i<=n;++i){
        ll num=m[0]/m[i],x,y;
        exgcd(num,m[i],x,y);
        x%=m[i];
        ans=(ans+a[i]*num*x)%m[0];
    }
    printf("%lld\n",(ans+m[0])%m[0]);
    return 0;
}

CH3B04 Xiao 9*大战朱最学的更多相关文章

  1. [转载]AI教师正来势汹汹,教师饭碗堪优

    (原文标题:开门,机器人老师来了) 一. 开门,机器人老师到了 国庆几天,河南刚刚上演一幕新科技的大戏: 计算机和人展开了为期四天的人机大战.这一次,对垒的双方不再是李世乭和阿尔法狗,而是教师和人工智 ...

  2. 扫黑除恶Team第四次团队作业

    二.博客撰写要求 文章开头给出团队序号,开发的软件名称,仓库地址. 给出完成本次冲刺需要做的事情(Sprint Backlog)及相应说明. 本次冲刺总结. 三.评分规则 注意:本次作业总分61分.发 ...

  3. 【跟我一起学Unity3D】做一个2D的90坦克大战之AI系统

    对于AI,我的初始想法非常easy,首先他要能动,而且是在地图里面动. 懂得撞墙后转弯,然后懂得射击,其它的没有了,基于这个想法,我首先创建了一个MyTank类,用于管理玩家的坦克的活动,然后创建AI ...

  4. 学以敩(xiao,效)为敎,以见为觉。醒悟、明白。

    学以敩(xiao,效)为敎,以见为觉.醒悟.明白 上半部分中间的爻是算筹,在古时被用来记数和计算:两边是手,既表示手把手传授,双手也表恭敬与专注:中间是一座房子,表示教学和学习的地方,这个地方不用豪华 ...

  5. 【讲座】朱正江——基于LC-MS的非靶向代谢组学

    本次课程主题为<基于LC-MS的非靶向代谢组学>,主要分为代谢组学简介.代谢组学技术简介.非靶向代谢组学方法和数据采集.非靶向代谢组学数据分析和代谢物结构鉴定几个方面. 一.代谢组简介 基 ...

  6. 写简单游戏,学编程语言-python篇:传说哥大战剧毒术士

    上篇写的动画示例其实算不上一个游戏,顶多算是利用pygame进行的图形操作,今天着手实现一个小游戏:传说哥大战剧毒术士.名字很玄乎,其实就是最简单的一个射击游戏.好了废话不多说,先上截图吧: 一.初始 ...

  7. python开发面向对象基础:人狗大战学面向对象

    一,通过函数写人狗大战这个故事 #!/usr/bin/env python #_*_coding:utf-8_*_ #1.函数 人模子 def person(name,level,life_value ...

  8. 这份书单,给那些想学Hadoop大数据、人工智能的人

    一.简单科普类 (文末附下载链接) 1.<人工智能:李开复谈AI如何重塑个人.商业与社会的未来图谱2> 作者:李开复,王咏刚 推荐理由:文章写得一般,但李开复和王永刚老师总结的还可以,算国 ...

  9. 阅读笔记 1 火球 UML大战需求分析

    伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本   <火球 UML大战需求分析>,首先 ...

随机推荐

  1. Unity3D在C#编程中的一些命名空间的引用及说明

    System包含用于定义常用值和引用数据类型.事件和事件处理程序.接口.属性和处理异常的基础类和基类.其他类提供支持下列操作的服务:数据类型转换,方法参数操作,数学计算,远程和本地程序调用,应用程序环 ...

  2. http协议与浏览器缓存

    http协议与浏览器缓存 F5刷新与在地址栏回车的区别 链接

  3. 深度学习----Xavier初始化方法

    “Xavier”初始化方法是一种很有效的神经网络初始化方法,方法来源于2010年的一篇论文<Understanding the difficulty of training deep feedf ...

  4. Java实现随机生成车牌号

    String[] citys = {"津","京","宁"}; String sectionNamePre = "断面" ...

  5. linux下Mysql多实例实现

    什么是MySQL多实例 MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务:: My ...

  6. win8 下面 listen 的队列长度貌似无效了 上c/s 代码 并附截图,有图有真相

    #include <WinSock2.h> #include <stdio.h> #include <windows.h> DWORD ServerRoutine( ...

  7. 201621123001 《Java程序设计》第14周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容. Mysql数据库简单操作,常用的操作命令 启动:进入Mysql (从命令行mysql -u root -p) 退 ...

  8. elk之elasticsearch安装

    环境: centos7 jdk8 参考: https://www.elastic.co/guide/en/elasticsearch/reference/current/rpm.htmlhttp:// ...

  9. 基于.NET Core 框架搭建WebApi项目

    一 什么是.NET Core? 随着2014年 Xamarin和微软发起.NET基金会,微软在2014年11月份开放.NET框架源代码.在.NET开源基金会的统一规划下诞生了.NET Core .也就 ...

  10. 类的无参方法和Doc注释

    一:Java Doc注释: 语法: /** *AccpSchool 类 *@author JadeBird *@version 1.0 2018/5/26 */ Java Doc是前Sun公司提供的一 ...