Hrbust 1535 相爱
Description
静竹在斐波那契的帮助下,渐渐的和数学相爱了。和数学在一起最有意思的就是它能够出一些特别有意思并且巧妙的题目让静竹来思考。这次也不例外,给静竹两个数a,b,又给出了加,减,乘,除,乘方五种操作六种算式(a + b, a – b, a * b, a / b, a ^ b, b ^ a)让静竹从中挑一种操作使得a,b处理后数值变得最大。静竹思考了一番发现,这个结果可能会特别大怎么办呢?为了解决这个问题,数学又给出了一个数m,让最终结果对其求余就可以让结果变小了。
Input
每行输入三个整数a, b, m(0 <=a, b <=100000000, 0< m <1000)
处理到文件结束
Output
对于每行的输入,输出一个整数代表结果最终的结果
Sample Input
2 3 5
3 2 5
Sample Output
4
4
题解:
1、不难发现,这个题有很多小细节,而且各种小细节一定都是a,b非常小的情况下才有,通过手写模拟不难发现,当a,b足够大的时候(其实10就算足够大了).五种运算中,一定是幂所带来的收益最大,而且也不难发现,这种情况下,一定是min(a,b)^max(a,b)是最大的值,所以我们如果a,b足够大的时候,直接输出min(a,b)^max(a,b)%mod即可。
2、那么各种小细节如何处理呢?因为a,b足够小,所以直接暴力维护最大值最后取模即可啊!
3、注意b==0的时候不能进行除法。
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
#define LL long long
LL a,b,m;
LL work(LL a,LL b)
{
LL num=;
while(b>)
{
if (b%==) num=num*a;
a=a*a;
b=b/;
}
return num;
}
LL work2(LL a,LL b)
{
LL num=;
while(b>)
{
if (b%==) num=num*a%m;
a=a*a%m;
b=b/;
}
return num%m;
}
int main()
{
while(~scanf("%lld%lld%lld",&a,&b,&m))
{
LL ans=;
ans=max(a+b,a*b);
if (a>b) swap(a,b);
if (b<=)
ans=max(max(ans,work(a,b)),work(b,a));
else ans=work2(a,b); printf("%lld\n",ans%m);
}
return ;
}
Hrbust 1535 相爱的更多相关文章
- Codevs 1535 封锁阳光大学
1535 封锁阳光大学 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大 ...
- 动态规划(背包问题):HRBUST 1377 金明的预算方案
金明的预算方案 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行 ...
- hdu 1535 Invitation Cards
http://acm.hdu.edu.cn/showproblem.php?pid=1535 这道题两遍spfa,第一遍sfpa之后,重新建图,所有的边逆向建边,再一次spfa就可以了. #inclu ...
- HDU 1535 Invitation Cards (POJ 1511)
两次SPFA. 求 来 和 回 的最短路之和. 用Dijkstra+邻接矩阵确实好写+方便交换.可是这个有1000000个点.矩阵开不了. d1[]为 1~N 的最短路. 将全部边的 邻点 交换. d ...
- [ An Ac a Day ^_^ ] hrbust 2291 Help C5 分形
开博客这么久从来没写过自己学校oj的题解 今天写一篇吧 嘿嘿 原题链接:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProble ...
- hrbust 2384 相同的不相同的字符串
Description 研究证明,汉的字阅读序顺是不会影响你明白这句话的意思的. 但是如果顺序差的太多也是会影响的,比如汉阅读顺的序字你就看不懂什么意思了. 那么多少算多呢?科学家芦苇给出证明,当两个 ...
- HRBUST - 2358 Magic network
HRBUST - 2358 思路:dfs序 + 树状数组 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimiz ...
- HDU 1535 Invitation Cards(逆向思维+邻接表+优先队列的Dijkstra算法)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1535 Problem Description In the age of television, n ...
- POJ 1511 Invitation Cards / UVA 721 Invitation Cards / SPOJ Invitation / UVAlive Invitation Cards / SCU 1132 Invitation Cards / ZOJ 2008 Invitation Cards / HDU 1535 (图论,最短路径)
POJ 1511 Invitation Cards / UVA 721 Invitation Cards / SPOJ Invitation / UVAlive Invitation Cards / ...
随机推荐
- java.lang.OutOfMemoryError: PermGen space异常及解决
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被 ...
- linux 常用命令总结(三)
1. setup // 进入相应配置界面,按空格键选择相关功能 2. ll // 列出当前目录下详细内容 :等价与ls -all 3. clear // 清理当前 ...
- zookeeper 监听事件 PathChildrenCacheListener
zookeeper 监听事件 PathChildrenCacheListener PathChildrenCacheListener一次父节点注册,监听每次子节点操作,不监听自身和查询. 1.测试类: ...
- 对于JVM中方法区,永久代,元空间以及字符串常量池的迁移和string.intern方法
在Java虚拟机(以下简称JVM)中,类包含其对应的元数据,比如类的层级信息,方法数据和方法信息(如字节码,栈和变量大小),运行时常量池,已确定的符号引用和虚方法表. 在过去(当自定义类加载器使用不普 ...
- Oracle数据库创建表ID字段的自动递增
转载地址:http://blog.itpub.net/22880668/viewspace-1117343/ 将表t_uaer的字段ID设置为自增:(用序列sequence的方法来实现) ----创建 ...
- 写写Web API基础
前两天突然心血来潮,对WEB Api 来了复习兴趣,虽然有很长时间没用了,现在有点迷湖.呀的!在VS2013的MVC项目(基于VS2012/MVC4的,如果是VS2013下的MVc5时,创建时勾上We ...
- 自动配置@Resource与@Autowired
总结自:https://www.cnblogs.com/kuotian/p/8795812.html 试用情形:bean的某个成员变量是另一个bean 如果使用配置: <bean id=&quo ...
- kali 安装virtualbox
安装virualbox 的三大步: 1.添加源: Add the following line to your /etc/apt/sources.list: deb http://download.v ...
- http://www.kindsoft.net/docs/qna.html
http://www.kindsoft.net/docs/qna.html 感觉 Kindediter 非常好用 界面效果好 API也全面 很不错的编辑器
- linux之kali系统ssh服务开启
1.修改sshd_config文件,命令为:vi /etc/ssh/sshd_config 2.将#PasswordAuthentication no的注释去掉,并且将NO修改为YES //我的ka ...