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版)的更多相关文章

  1. HDU 1840 Equations (简单数学 + 水题)(Java版)

    Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1840 ——每天在线,欢迎留言谈论. 题目大意: 给你一个一元二次方程组,a(X^2 ...

  2. HDU 5832 A water problem(某水题)

    p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-s ...

  3. 题解报告:hdu 2086 A1 = ?

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2086 Problem Description 有如下方程:Ai = (Ai-1 + Ai+1)/2 - ...

  4. hdu 5047 大数找规律

    http://acm.hdu.edu.cn/showproblem.php?pid=5047 找规律 信kuangbin,能AC #include <stdio.h> #include & ...

  5. HDU 4572 Bottles Arrangement(找规律,仔细读题)

    题目 //找规律,123321123321123321…发现这样排列恰好可以错开 // 其中注意题中数据范围: M是行,N是列,3 <= N < 2×M //则猜测:m,m,m-1,m-1 ...

  6. hdu 2393:Higher Math(计算几何,水题)

    Higher Math Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  7. <hdu - 3999> The order of a Tree 水题 之 二叉搜索的数的先序输出

    这里是杭电hdu上的链接:http://acm.hdu.edu.cn/showproblem.php?pid=3999  Problem Description: As we know,the sha ...

  8. HDOJ/HDU 1256 画8(绞下思维~水题)

    Problem Description 谁画8画的好,画的快,今后就发的快,学业发达,事业发达,祝大家发,发,发. Input 输入的第一行为一个整数N,表示后面有N组数据. 每组数据中有一个字符和一 ...

  9. hdu 1164:Eddy's research I(水题,数学题,筛法)

    Eddy's research I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

随机推荐

  1. SQL中的Join和Where的区别

    一.sql语句中left join.inner join中的on与where的区别 0.各种join操作的概念和作用 left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录. ...

  2. JavaScript易错点 -- 数组比较

    记得当初初学JavaScript时尝试用“==”或“===”比较两个数组是否相等, var a = [1,2,3] var b = [1,2,3] if(a == b){ //false //do s ...

  3. salesforce lightning零基础学习(十一) Aura框架下APP构造实现

    前面的一些lightning文章讲述了aura的基础知识,aura封装的常用js以及aura下的事件处理.本篇通过官方的一个superbadge来实现一个single APP的实现. superbad ...

  4. 使用 AcceptTcpClientAsync 进行 异步 操作

    转自:https://gist.github.com/jamesmanning/2622054 using System; using System.Collections.Generic; usin ...

  5. JavaScript和Ajax部分(3)

    21. 原生(native)Ajax使用实例 //创建XMLHttpRequest对象的方法 function createXmlHttpRequest(){ if(window.ActiveXObj ...

  6. 一览js模块化:从CommonJS到ES6

    本文由云+社区发表 模块化是指把一个复杂的系统分解到一个一个的模块. 模块化开发的优点: (1)代码复用,让我们更方便地进行代码管理.同时也便于后面代码的修改和维护. (2)一个单独的文件就是一个模块 ...

  7. Go基础系列:构建go程序

    hello world 从一个简单的程序开始解释,将下面的内容放进test.go文件中,路径随意: package main import ( "fmt" ) func main( ...

  8. SpringCloud学习(一):微服务简介

    一.前情概要 1.单体架构是什么 1).一个归档包包含了应用所有功能的应用程序, 我们通常称之为单体应用. 2).架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格. 2.单体 ...

  9. [转]usdt omnicore testnet 测试网络

    本文转自:https://www.jianshu.com/p/417c280b8f9f Testnet 模式允许 omni core 运行在比特币测试链上,用于安全测试. 为了在 testnet 上收 ...

  10. Ioc原理理解

    IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑. 如果我们打开机械式手表的后盖,就会看到与上面类似 ...