题解 CF440A 【Forgotten Episode】
虽然这道题是紫题,但实际难度应该是橙题吧
首先,看到标签……
紫题?但题目也太…… 这道题教会我们不要看标签
好了,废话少说,看到楼下许多大佬都用了数组,但我觉得可以不用
为什么? 我也弄不清楚
因为是 1 ~ n ,所以大家想到了什么呢?
对辣!就是
等差数列!
而且是最简单的首项为1,公差也为1的等差数列
相信大佬们都知道等差数列的公式吧!
( 首项 + 末项 ) × 项数 ÷ 2
这就好办了!
我们只要将 1 ~ n 的和记下来,再减去那 n - 1 个数的和,不就可以算出剩下的那个数了吗?
还有一个。
1 到 100000 的和是 ( 1 + 100000 ) × 100000 ÷ 2 = 5000050000
而 int 的储存上限为 2147483647
大家应该知道我要说什么了吧
一定要开 long long !
而且,我的最爱——快读也可以用上
快读?
是不是 如雷贯耳 ?
是不是 久仰大名 ?
是不是仔细想想,咦?快读到底是干嘛的? 尴尬
本蒟蒻查了一下,快读就是快速读入 (从字面上来理解)
快读的原理就是将一个整数转化为先输入一个字符,再将其转化为整数。大家应该都知道,字符 0 的 ASCII 码是 48 ,那么,所有字符数字对应的整数是否就应该转化为它的 ACSII 码减去48 ( 即字符 '0' ) 呢?(从本义上来理解)
显然是的。 其实我也不知道为什么会这样,但是测大数据时将一目了然
那么,具体应该怎么实现呢?
快读代码重磅来袭
int read(){//快读
,f=;//r为计数器,f为标志,看是正数还是负数
char c=getchar();//先读入c
')&&c!='-')
c=getchar();//为别的符号时直接读入,不管它是什么
if(c=='-')//如果读入了负号,标记置-1,为后面做铺垫
f=-,c=getchar();
')//开始读入数字
r=r*+c-',c=getchar();//r开始转化为多位数
return r*f;//若标记f=1则为正数,f=-1为负数
}
那我觉得也就这些了吧 应该是我太蒟才这样的
下面放出完整代码!!
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;//先定义了ll(取首字母),否则待会儿手写有点儿麻烦
ll n,i,a,s;//使用ll
ll read(){//快读
ll r=,f=;
char c=getchar();
')&&c!='-')
c=getchar();
if(c=='-')
f=-,c=getchar();
')
r=r*+c-',c=getchar();
return r*f;
}
int main(){
n=read();//n的read读入方式,get一下
;i<n;i++)//记住是n-1个数
a=read(),s+=a;
printf()*n/-s);//根据上面公式
;
}
O I 加油!洛谷冲鸭!
题解 CF440A 【Forgotten Episode】的更多相关文章
- Codeforces Testing Round #10 A. Forgotten Episode
水题,注意数据范围 #include <iostream> using namespace std; int main(){ long long n,a; cin >> n; ...
- 【题解】CF611H New Year and Forgotten Tree
[题解]CF611H New Year and Forgotten Tree 神题了... 题目描述 给定你一棵树,可是每个节点上的编号看不清了,只能辨别它的长度.现在用问号的个数代表每个节点编号那个 ...
- 【题解】CF#611 H-New Year and Forgotten Tree
有趣啊~手玩一下这棵树,发现因为连边只对相连点的位数有限制,我们可以认为是在往一棵已经有 m 个结点的树上挂叶子结点直到满足要求.(m = log(10) n).注意由于 m 超级无敌小,我们可以直接 ...
- 题解 CF611H 【New Year and Forgotten Tree】
Solution 提供一种新思路. 首先考虑如何判断一个状态是否合法. 考虑把所有十进制长度一样的数缩成一个点. 这样的点的个数 \(\le 5\). 蒟蒻猜了一个结论:只要满足对于所有缩出来的点的子 ...
- 2016-2017 CT S03E06: Codeforces Trainings Season 3 Episode 6(8/13)
2016-2017 CT S03E06: Codeforces Trainings Season 3 Episode 6 比赛连接: http://codeforces.com/gym/101124/ ...
- VK Cup 2016 - Round 1 (Div. 2 Edition) C. Bear and Forgotten Tree 3 构造
C. Bear and Forgotten Tree 3 题目连接: http://www.codeforces.com/contest/658/problem/C Description A tre ...
- IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2) E. Bear and Forgotten Tree 2 bfs set 反图的生成树
E. Bear and Forgotten Tree 2 题目连接: http://www.codeforces.com/contest/653/problem/E Description A tre ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
随机推荐
- 基于thinkphp5的Excel上传
涉及知识点: thinkphp5.0: excel上传: mysql建立新表(基本的create语句): mysql ignore(避免重复插入): 主要功能: 通过在视图中上传excel文件,在my ...
- BAT或赌在当下或押在未来,谁是王者?
转自:http://www.tmtpost.com/97132.html 百度阿里和腾讯三家本来的核心业务并不冲突,各守一方阵地,但随着各自的收购注资加上业务的延展而慢慢有了交际,阿里和腾讯在移动支付 ...
- bzoj 2406: 矩阵【二分+有源汇上下界可行流】
最大值最小,所以考虑二分 |Σaij-Σbij|<=mid,所以Σbij的上下界就是(Σaij-mid,Σaij+mid) 考虑建有上下界网络,连接(s,i,Σaik-mid,Σaik+mid) ...
- [Xcode 实际操作]九、实用进阶-(20)创建位移关键帧动画:通过添加运动关键点制作位移动画
目录:[Swift]Xcode实际操作 本文将演示如何通过添加运动关键点的方式,来制作位移动画 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIK ...
- RN初始化项目报错
解决方法:全局删除yarn
- 基于http的软件仓库
这是企业中常用的方法 比如一台服务器准备好了,公司必然要安装一些应用 这时可以用这种方法批量安装应用 运行一条命令,服务器就会自己去连接软件仓库,去下载来安装. [root@webmaster htm ...
- Qt 2D绘图之五:图形视图框架的结构和坐标系统
一.图形视图框架的结构 在前面讲的基本绘图中,我们可以自己绘制各种图形,并且控制它们.但是,如果需要同时绘制很多个相同或不同的图形,并且要控制它们的移动.检测它们的碰撞和叠加:或者我们想让自己绘制的图 ...
- 按位&按位|按位~的详解
十进制转二进制: 例:十进制(5)---->二进制(00000101) 将整数除二取余,继续用除二的结果除二取余,最后将结果从下往上连接起来,不足八位,前面填0 二进制转十进制 例:二进制(00 ...
- Java面试:投行的15个多线程和并发面试题(转)
多线程和并发问题已成为各种 Java 面试中必不可少的一部分.如果你准备参加投行的 Java 开发岗位面试,比如巴克莱银行(Barclays).花旗银行(Citibank).摩根史坦利投资公司(Mor ...
- STL使用迭代器逆向删除
网上有很多这种例子: void erase(vector<int> &v) { for(vector<int>::reverse_iterator ri=v.rbegi ...