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: ...
随机推荐
- vi 编辑器跳转到指定行数
如:跳转到25行 :set number :23
- hadoop Yarn运行机制
- 基于Redis的在线用户列表解决方案
前言: 由于项目需求,需要在集群环境下实现在线用户列表的功能,并依靠在线列表实现用户单一登陆(同一账户只能一处登陆)功能: 在单机环境下,在线列表的实现方案可以采用SessionListener来完成 ...
- 如何使用GOOLE
如何使用google http://www.kancloud.cn/yunzhiclub/google
- USACO 1.3.2
题目链接:USACO 1.3.2 这道题有点小坑,不是算法错了,而是文件名,是barn1不是barnl,恕我眼拙,找了十五分钟... 肯定是木板的个数用的越多越好,这样可以减少空隙. 简单的贪心,将每 ...
- FIR数字滤波器的设计要点
源:http://blog.sina.com.cn/s/blog_493520900101gt0a.html FIR数字滤波器的设计要点
- hive第二篇----hive中partition如何使用
一.背景 1.在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念. 2.分区表指的是在创建表 ...
- CodeForces 626C Block Towers
构造AC的.左右两边都先不用6的倍数,然后哪边数字大那一边往回退一下,然后再比较哪边数字大.......直到结束 #include<cstdio> #include<cstring& ...
- MySQL show slave status命令参数
? Slave_IO_State SHOW PROCESSLIST输出的State字段的拷贝.SHOW PROCESSLIST用于从属I/O线程.如果线程正在试图连接到主服务器,正在等待来自主服务器的 ...
- LPC1768的IIS通讯
IIS是飞利浦公司定义的一种用于音频传输的数字总线,LPC1768支持该总线, I2S接口为一条3线串行总线,含有1根数据线.1根时钟线和1根字选择信号线.基本的I2S连接具有一个主机(其总是为主机) ...