题意

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. mybatis if标签判断字符串相等

    mybatis 映射文件中,if标签判断字符串相等,两种方式: 因为mybatis映射文件,是使用的ognl表达式,所以在判断字符串sex变量是否是字符串Y的时候, <if test=" ...

  2. jvm常用参数

    -Xms512m:初始堆内存 -Xmx512m:最大堆内存 -XX:PermSize=256m:初始永久代内存(方法区,非堆) -XX:MaxPermSize=256m:最大永久代内存(方法区,非堆) ...

  3. OOP⑻

    1.接口: 类 和 对象 对象 is a 类 例子: 小鸟 is a 动物 飞机 is a 交通工具 子弹 is a 武器 卫星 is a 通讯工具 问题? 01. 小鸟 飞机 子弹 卫星 虽然不是一 ...

  4. Remove duplicates from array

    //Given a sorted array, remove the duplicates in place such that each element appear only // once an ...

  5. SQL-6查找所有员工入职时候的薪水情况,给出emp_no以及salary, 并按照emp_no进行逆序

    题目描述 查找所有员工入职时候的薪水情况,给出emp_no以及salary, 并按照emp_no进行逆序CREATE TABLE `employees` (`emp_no` int(11) NOT N ...

  6. 1040 有几个PAT

    字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T). 现 ...

  7. DevExpress v18.1新版亮点——DevExtreme篇(三)

    用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExtreme JavaScript Controls v18.1 的新功能 ...

  8. Grid Layout 注释

    .wrapper {  display: grid;/*定义一个块级的网格容器*/  grid-template-columns: repeat(3, 1fr); /*表示平均分为3列*/  grid ...

  9. dubbo-admin 无法支持JDK1.8

    dubbo-admin 无法支持JDK1.8怎么处理? 1.从git上下载最新源码 https://github.com/alibaba/dubbo 2.编译war包,或直接容器启动

  10. adb shell按键操作(input keyevent)

    前言:input keyeven操作发送手机上常用的一些按键操作 一.keyevent事件对应数字 电话键 KEYCODE_CALL: 拨号键 KEYCODE_ENDCALL: 挂机键 KEYCODE ...