BNU Online Judge-34976-数细菌
题目链接
http://www.bnuoj.com/bnuoj/problem_show.php?pid=34976
题目分析通过a b可以设x,y
x+y=a x+3*y=b 解出x,y, x=(3*a-b)/2 y=(b-a)/2;
x=(3*a-b)/2; y=(b-a)/2;
n1=(n-1)/2; n2=n/2;
n1 n2 分别为代表3的指数
可以得出结果 s=log10(x*1.0*pow(3.0,n1)+y*1.0*pow(3.0,n2));
如果这样写的话由于a,b,n过大会ni出需要进行变换
因为n1==n2或n2-n1==1可以提出pow(3.0,n1), log10(3的n1次)可改为n1*log10(3);
那么就变成了
if(n1==n2)
{
s=n1*log10(3.0)+log10(x+y);
}
else
{
s=n1*log10(3.0)+log10(x+3*y);
}
这样就达到目的了
代码
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define ll long long
int main(void)
{
int t;
ll a,b,n,n1,n2;
ll x,y;
scanf("%d",&t);
while(t--)
{
double s=0;
scanf("%lld%lld%lld",&a,&b,&n);
x=(3*a-b)/2; y=(b-a)/2;
n1=(n-1)/2; n2=n/2;
if(n1==n2)
{
s=n1*log10(3.0)+log10(x+y);
}
else
{
s=n1*log10(3.0)+log10(x+3*y);
}
printf("%.10lf\n",s);
}
return 0;
}
BNU Online Judge-34976-数细菌的更多相关文章
- Open judge 07和为给定数
总时间限制: 1000ms 内存限制: 65536kB 传送门 类似的题传送门 描述 给出若干个整数,询问其中是否有一对数的和等于给定的数. 输入 共三行: 第一行是整数n(0 < n < ...
- 2016中国大学生程序设计竞赛(长春)-重现赛 1010Ugly Problem 回文数 模拟
Ugly Problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
- BNU 2418 Ultra-QuickSort (线段树求逆序对)
题目链接:http://acm.bnu.edu.cn/bnuoj/problem_show.php?pid=2418 解题报告:就是给你n个数,然后让你求这个数列的逆序对是多少?题目中n的范围是n & ...
- 斐波那契数[XDU1049]
Problem 1049 - 斐波那契数 Time Limit: 1000MS Memory Limit: 65536KB Difficulty: Total Submit: 1673 Ac ...
- OpenJudge计算概论-细菌的战争
/*====================================================================== 细菌的战争 总时间限制: 1000ms 内存限制: 6 ...
- P2022 有趣的数
P2022 有趣的数 题目描述 让我们来考虑1到N的正整数集合.让我们把集合中的元素按照字典序排列,例如当N=11时,其顺序应该为:1,10,11,2,3,4,5,6,7,8,9. 定义K在N个数中的 ...
- Project Euler 92:Square digit chains 平方数字链
题目 Square digit chains A number chain is created by continuously adding the square of the digits in ...
- BNU OJ 33691 / LA 4817 Calculator JAVA大数
留着当个模板用,在BNU上AC,在LA上RE……可能是java的提交方式不同??? 数和运算符各开一个栈. 表达式从左到右扫一遍,将数存成大数,遇到数压在 数的栈,运算符压在 运算符的栈,每当遇到右括 ...
- bzoj 2876: [Noi2012]骑行川藏 拉格朗日数乘
2876: [Noi2012]骑行川藏 Time Limit: 20 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 1033 Solved: ...
随机推荐
- JAVA实现二进制,十六进制输出
public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-gener ...
- Android系统开机启动画面显示过程简要说明
开机启动会显示三个画面: Linux内核的启动画面,静态画面 Init进程启动过程中出现的静态画面 系统服务启动过程中出现的动态画面 这些画面的显示的过程不同,但最终是通过framebuffer显示的 ...
- 转 Android网络编程之使用HttpClient批量上传文件 MultipartEntityBuilder
请尊重他人的劳动成果,转载请注明出处:Android网络编程之使用HttpClient批量上传文件 http://www.tuicool.com/articles/Y7reYb 我曾在<Andr ...
- stm32 IAP + APP ==>双剑合一(转)
源:http://blog.csdn.net/yx_l128125/article/details/13591743 (扩展-IAP主要用于产品出厂后应用程序的更新作用,上一篇博文详细的对IAP 升级 ...
- CodeForces 581D Three Logos
爆搜. #include<cstdio> #include<string.h> #include<math.h> #include<queue> #in ...
- YouKu iOS笔试题一
序言 最近收到某某同学将去youku的iOS笔试题的邮件,希望笔者能整理一下,并提供参考答案.笔者决定整理出来,并分享给大家.当然,与此同时,也想看看youku的笔试题到底有多难,也考考自己有多少料吧 ...
- iBATIS 3 试用手记 - The FUTURE - ITeye技术网站
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- iOS8学习笔记2--autolayout
iOS支持的设备如今已经具有了很多的尺寸,针对这些不同的尺寸每一个都做一个独立的APP肯定是不现实的,于是苹果在iOS8之后推出了autolayout和sizeclass,同时还有VFL界面设计语言 ...
- PHP的Cookie、Session和跟Laravel相关的几点了解
这两天通过对Cookie和Session的查找和了解,网上关于它们两个的基础知识点都是差不多的,也收藏了几篇不错的博客,同时自己做了些实验后,有了以下几点了解: 1.setcookie 这里有三个地方 ...
- linux命令学习6-dpkg命令
dpkg命令是Debian Linux系统用来安装.创建和管理软件包的实用工具. 1. 语法 dpkg (选项) (参数)2. 选项 -i:安装软件包: -r:删除软件包: -P:删除软件包的同时删除 ...