UVA571 - Jugs(数论)

题目链接

题目大意:给你A和B的水杯。给你三种操作:fill X:把X杯里面加满水。empty X:把X杯中的水清空。pour X Y 把X的水倒入Y中直到一方满或还有一方空为止。然后要求你得到C的水量,给出实现步骤。

解题思路:由于A,B互质,n属于【1,B - 1】则n%B=n。那么n∗A%B=
n%B∗A%B
= n∗R。由于AB互质所以n∗A不可能整除B。如今要求得到水量n,那么仅仅要使得R
== 1就能够得到想要的水量。这样仅仅要控制A的系数就能够得到想要的水量,所以步骤就是不停的将A的水倒入B中,直到等于目标水量。仅仅是倒入的时候须要推断一下A是否是空还是B是否是满,相应将他们填满或是清空。

代码:

#include <cstdio>
#include <cstring> int A, B, C;
void solve() { int ca, cb;
ca = cb = 0;
while (1) { if (ca == C || cb == C) {
printf ("success\n");
return;
}
if (ca == 0) {
printf ("fill A\n");
ca = A;
} else if (cb == B) {
printf("empty B\n");
cb = 0;
} else { printf ("pour A B\n");
if (cb + ca > B) {
ca = cb + ca - B;
cb = B;
} else {
cb += ca;
ca = 0;
}
} }
} int main () { while (scanf ("%d%d%d", &A, &B, &C) != EOF) { solve();
}
return 0;
}

UVA571 - Jugs(数论)的更多相关文章

  1. Codeforces Round #382 Div. 2【数论】

    C. Tennis Championship(递推,斐波那契) 题意:n个人比赛,淘汰制,要求进行比赛双方的胜场数之差小于等于1.问冠军最多能打多少场比赛.题解:因为n太大,感觉是个构造.写写小数据, ...

  2. NOIP2014 uoj20解方程 数论(同余)

    又是数论题 Q&A Q:你TM做数论上瘾了吗 A:没办法我数论太差了,得多练(shui)啊 题意 题目描述 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, ...

  3. 数论学习笔记之解线性方程 a*x + b*y = gcd(a,b)

    ~>>_<<~ 咳咳!!!今天写此笔记,以防他日老年痴呆后不会解方程了!!! Begin ! ~1~, 首先呢,就看到了一个 gcd(a,b),这是什么鬼玩意呢?什么鬼玩意并不 ...

  4. hdu 1299 Diophantus of Alexandria (数论)

    Diophantus of Alexandria Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java ...

  5. 【BZOJ-4522】密钥破解 数论 + 模拟 ( Pollard_Rho分解 + Exgcd求逆元 + 快速幂 + 快速乘)

    4522: [Cqoi2016]密钥破解 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 290  Solved: 148[Submit][Status ...

  6. bzoj2219: 数论之神

    #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...

  7. hdu5072 Coprime (2014鞍山区域赛C题)(数论)

    http://acm.hdu.edu.cn/showproblem.php?pid=5072 题意:给出N个数,求有多少个三元组,满足三个数全部两两互质或全部两两不互质. 题解: http://dty ...

  8. ACM: POJ 1061 青蛙的约会 -数论专题-扩展欧几里德

    POJ 1061 青蛙的约会 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%lld & %llu  Descr ...

  9. 数论初步(费马小定理) - Happy 2004

    Description Consider a positive integer X,and let S be the sum of all positive integer divisors of 2 ...

随机推荐

  1. Python面试题(练习一)

    1.Python的可变类型和不可变类型? 可变类型:list.dict(列表和字典) 不可变类型:数字.字符串.元组 2.求结果: v = dict.fromkeys(['k1','k2'],[]) ...

  2. 05-python进阶-简单监控程序开发

    #!/usr/bin/env python #coding:utf-8 ''' 监控监控程序 ''' import json import urllib import inspect import o ...

  3. pycharm配置 自动运行指定脚本

    配置:RUN -Debug Configuration Script: 脚本的地址 Script Parameters: 脚本的参数 Interpreter: python解释器

  4. c3p0数据库连接池无法连接数据库—错误使用了username关键字

    一.问题描述 上篇博客说到了关于maven无法下载依赖jar包的问题,这篇博客再说一下关于在本个项目中遇到的关于使用C3P0连接池连接数据库的问题,真心很奇葩,在此,也请大家引起注意.首先看我的项目基 ...

  5. Timus 1329. Galactic History。LCA最近公共祖先或dfs递归离线处理!

    1329. Galactic History 比赛的时候看到学弟A了这题然后跟榜做,结果在LCA的道路上一去不复返,这个题是很像LCA求最近公共祖先的,不过三个人都没学过LCA,只能拿着资料看着像然后 ...

  6. ThinkPHP5杂技(一)

    Thinkphp5 assign 传递 " 时 ,前台收到的是 " 和ThinkPHP3.2不一样,3.2收到的是 ”,传递给js时 用的data.replace(new RegE ...

  7. SyntaxError: Non-UTF-8 code starting with '\xb4'...

    需在开头指定编码格式,在在最开头添加如下代码: # -*- coding: gb2312 -*- 大功告成!

  8. javascript进阶一

    一 window对象 http://www.w3school.com.cn/jsref/dom_obj_window.asp 二 setInterval的应用 模拟计时器 <!DOCTYPE h ...

  9. 在vue项目当中使用sass

    需要分别安装node-sass 和 sass-loader;可以不需要ruby; webpack当中配置 { test: /\.vue$/, loader: 'vue-loader', options ...

  10. 应用js函数柯里化currying 与ajax 局部刷新dom

    直接上代码吧 最近读javascript核心概念及实践的代码 感觉很有用 备忘. <div id="request"></div> <script t ...