HDU 2086 A1 = ? (找规律推导公式 + 水题)(Java版)
Equations
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2086
——每天在线,欢迎留言谈论。
题目大意:
有如下方程:Ai = (Ai-1 + Ai+1)/2 - Ci (i = 1, 2, 3, .... n)。
若给出A0, An+1, 和 C1, C2, .....Cn。
求 A1 。
思路:
多写几个例子,找规律推导(抄的)。
感想:
老啦,老啦,不行了。
Java AC代码:
import java.util.Scanner;
import java.math.*; public class Main {
static Scanner scn = new Scanner(System.in);
static final int MAXN = 3001;
static double[] c = new double[MAXN];
public static void main(String[] args) {
int n;
double a, b, answer;
while (scn.hasNext()) {
n = scn.nextInt();
a = scn.nextDouble();
b = scn.nextDouble();
for (int i = 1; i <= n; i++) {
c[i] = scn.nextDouble();
}
answer = n * a + b;
for (int i = n; i >= 1; i--) {
answer -= 2 * i * c[n - i + 1];
}
answer /= (n + 1);
System.out.println(String.format("%.2f", answer));
}
System.exit(0);
}
/**
* 因为:Ai=(Ai-1+Ai+1)/2 - Ci,
* A1=(A0 +A2 )/2 - C1;
* A2=(A1 + A3)/2 - C2 , ...
* => A1+A2 = (A0+A2+A1+A3)/2 - (C1+C2)
* 2[(A1+A2)+(C1+C2)] = A0+A2+A1+A3;
* A1+A2 = A0+A3 - 2(C1+C2);
* => A1+A2 = A0+A3 - 2(C1+C2)
* 同理可得:
* A1+A1 = A0+A2 - 2(C1)
* A1+A2 = A0+A3 - 2(C1+C2)
* A1+A3 = A0+A4 - 2(C1+C2+C3)
* A1+A4 = A0+A5 - 2(C1+C2+C3+C4)
* ...
* A1+An = A0+An+1 - 2(C1+C2+...+Cn)
*----------------------------------------------------- 左右求和
*(n+1)A1+(A2+A3+...+An) = nA0 +(A2+A3+...+An) + An+1 - 2(nC1+(n-1)C2+...+2Cn-1+Cn)
*
* => (n+1)A1 = nA0 + An+1 - 2(nC1+(n-1)C2+...+2Cn-1+Cn)
*
* => A1 = [nA0 + An+1 - 2(nC1+(n-1)C2+...+2Cn-1+Cn)]/(n+1)
*/
}
2017-08-11 17:46:51
HDU 2086 A1 = ? (找规律推导公式 + 水题)(Java版)的更多相关文章
- HDU 1840 Equations (简单数学 + 水题)(Java版)
Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1840 ——每天在线,欢迎留言谈论. 题目大意: 给你一个一元二次方程组,a(X^2 ...
- HDU 5832 A water problem(某水题)
p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-s ...
- 题解报告:hdu 2086 A1 = ?
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2086 Problem Description 有如下方程:Ai = (Ai-1 + Ai+1)/2 - ...
- hdu 5047 大数找规律
http://acm.hdu.edu.cn/showproblem.php?pid=5047 找规律 信kuangbin,能AC #include <stdio.h> #include & ...
- HDU 4572 Bottles Arrangement(找规律,仔细读题)
题目 //找规律,123321123321123321…发现这样排列恰好可以错开 // 其中注意题中数据范围: M是行,N是列,3 <= N < 2×M //则猜测:m,m,m-1,m-1 ...
- hdu 2393:Higher Math(计算几何,水题)
Higher Math Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- <hdu - 3999> The order of a Tree 水题 之 二叉搜索的数的先序输出
这里是杭电hdu上的链接:http://acm.hdu.edu.cn/showproblem.php?pid=3999 Problem Description: As we know,the sha ...
- HDOJ/HDU 1256 画8(绞下思维~水题)
Problem Description 谁画8画的好,画的快,今后就发的快,学业发达,事业发达,祝大家发,发,发. Input 输入的第一行为一个整数N,表示后面有N组数据. 每组数据中有一个字符和一 ...
- hdu 1164:Eddy's research I(水题,数学题,筛法)
Eddy's research I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
随机推荐
- SQL中的Join和Where的区别
一.sql语句中left join.inner join中的on与where的区别 0.各种join操作的概念和作用 left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录. ...
- JavaScript易错点 -- 数组比较
记得当初初学JavaScript时尝试用“==”或“===”比较两个数组是否相等, var a = [1,2,3] var b = [1,2,3] if(a == b){ //false //do s ...
- salesforce lightning零基础学习(十一) Aura框架下APP构造实现
前面的一些lightning文章讲述了aura的基础知识,aura封装的常用js以及aura下的事件处理.本篇通过官方的一个superbadge来实现一个single APP的实现. superbad ...
- 使用 AcceptTcpClientAsync 进行 异步 操作
转自:https://gist.github.com/jamesmanning/2622054 using System; using System.Collections.Generic; usin ...
- JavaScript和Ajax部分(3)
21. 原生(native)Ajax使用实例 //创建XMLHttpRequest对象的方法 function createXmlHttpRequest(){ if(window.ActiveXObj ...
- 一览js模块化:从CommonJS到ES6
本文由云+社区发表 模块化是指把一个复杂的系统分解到一个一个的模块. 模块化开发的优点: (1)代码复用,让我们更方便地进行代码管理.同时也便于后面代码的修改和维护. (2)一个单独的文件就是一个模块 ...
- Go基础系列:构建go程序
hello world 从一个简单的程序开始解释,将下面的内容放进test.go文件中,路径随意: package main import ( "fmt" ) func main( ...
- SpringCloud学习(一):微服务简介
一.前情概要 1.单体架构是什么 1).一个归档包包含了应用所有功能的应用程序, 我们通常称之为单体应用. 2).架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格. 2.单体 ...
- [转]usdt omnicore testnet 测试网络
本文转自:https://www.jianshu.com/p/417c280b8f9f Testnet 模式允许 omni core 运行在比特币测试链上,用于安全测试. 为了在 testnet 上收 ...
- Ioc原理理解
IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑. 如果我们打开机械式手表的后盖,就会看到与上面类似 ...