[ABC 099] B-Stone Monument

B - Stone Monument



Time limit : 2sec / Memory limit : 256MB

Score : 200 points

Problem Statement

In some village, there are 999 towers that are 1,(1+2),(1+2+3),…,(1+2+3+…+999) meters high from west to east, at intervals of 1 meter.

It had been snowing for a while before it finally stopped. For some two adjacent towers located 1 meter apart, we measured the lengths of the parts of those towers that are not covered with snow, and the results are a meters for the west tower, and b meters for the east tower.

Assuming that the depth of snow cover and the altitude are the same everywhere in the village, find the amount of the snow cover.

Assume also that the depth of the snow cover is always at least 1 meter.

Constraints

  • 1≤a<b<499500(=1+2+3+…+999)
  • All values in input are integers.
  • There is no input that contradicts the assumption.

[题目解释]

  这里有999座塔,第1座高度为1,第二座高度为(1+2),…,第999座高度为(1+2+3+…+999),现在有雪覆盖在塔的底部即使塔的高度降低雪的厚度,给你两座相邻且高度分别为a,b(a<b)的塔,求雪的厚度为多少?

[题目解析]

  我们发现第1座塔高度为1,第二座塔高度为(1+2),得到第n座塔高度为公差为1从1到n的等差数列之和即(1+2+…+n)=(1+n)/2,因为a,b两座塔是相邻的,也就是说b-a可以得到b的等差数列最后一项,这样我们就可以等差数列求和公式算出b塔最初的高度,b塔的最初高度减去现在b塔的高度及为答案(当然你也可以将b-a-1算出a等差数列的最后一项,从而算出a的原始高度,再算出雪的厚度)

[代码]

/*
    Name: Stone Monument
    Author: FZSZ-LinHua
    Date: 2018 06 10
    Exec time: 1ms
    Memory usage: 256KB
    Score: 200
    Algorithm: Brute-force
*/
# include "iostream"
# include "cstdio"

using namespace std;

int a,b,now; 

int main(){
    scanf("%d%d",&a,&b);
    now=b-a;    //算出b等差数列的最后一项
    printf("%d",(now+1)*now/2-b);     //(now+1)*now/2为b塔的原始高度(等差数列求和公式)
    return 0;
} 

原文地址:https://www.cnblogs.com/FJ-LinHua/p/9164909.html

时间: 2024-10-30 06:10:53

[ABC 099] B-Stone Monument的相关文章

[ABC 099] A-ABD

A - ABD Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Decades have passed since the beginning of AtCoder Beginner Contest. The contests are labeled as ABC001, ABC002, - from the first round, but after the 999-th round 

POJ 1740 A New Stone Game

A New Stone Game Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5453   Accepted: 2989 Description Alice and Bob decide to play a new stone game.At the beginning of the game they pick n(1<=n<=10) piles of stones in a line. Alice and Bob

Lifting the Stone(hdoj1115)

Lifting the Stone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6104    Accepted Submission(s): 2546 Problem Description There are many secret openings in the floor which are covered by a big

java中String s="abc"及String s=new String("abc")详解

1.   栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2.   栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器.但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性.另外,栈数据可以共 享,详见第3点.堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据.但缺点是,由于要 在运行时动态分配内存,存取速度较慢. ==是判断

堆与栈(JAVA)——以String str=&quot;abc&quot;的深度含义解释

栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器.但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性.另外,栈数据在多个线程或者多个栈之间是不可以共享的,但是在栈内部多个值相等的变量是可以指向一个地址的.堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据.但缺点是,由于要在运

今年数博会全面升级!BAT+TMD+ABC黑科技,你能看到谁?

一年一度的贵阳数博会又要来了!2017年5月26-29日,第三届贵阳数博会将在贵阳举办.然后重要的事情说三遍,今年的数博会规格全面升级了!升级了!升级了!今年数博会是首届中国国际大数据产业博览会,本届数博会的年度主题为"数字经济引领新增长". 2015年,数博会第一次举办的时候叫贵阳国际大数据产业博览会暨全球大数据时代贵阳峰会分,2016年第二次举办的时候叫中国大数据产业峰会暨中国电子商务创新发展峰会,2017年正式升级为中国国际大数据产业博览会,这意味着2017年数博会正式升级为国家

九度oj 题目1059:abc

题目1059:abc 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:4510 解决:3546 题目描述: 设a.b.c均是0到9之间的数字,abc.bcc是两个三位数,且有:abc+bcc=532.求满足条件的所有a.b.c的值. 输入: 题目没有任何输入. 输出: 请输出所有满足题目条件的a.b.c的值.a.b.c之间用空格隔开.每个输出占一行. 样例输入: 样例输出: 1 #include <iostream> 2 using namespace std; 3 int main

python abc模块

因为Python没有提供抽象类,需要使用抽象类需要使用abc模块 abc用法很简单主要是3个: ABCMeta,abstactporperty,abstractmethod from abc import ABCMeat, abstractporperty, abstractmethod class B():   __metaclass__ =  ABCMeta  @abstractporperty  def map_data(self):     pass  @abstractmethod  

LNMP_访问 www.abc.com&#160;&#160;请求到 www.abc.com/abc/

在nginx配置文件中加入 if ($document_uri !~ 'jzq') { rewrite ^/(.*)$ http://www.jzq.pub/abc/$1 permanent; } Mkdir /data/www/abc