【6.28校内test】T2 【音乐会】二重变革
T2其实是一道数学题,因为你看:
2MB??一共就可以存下个int,然鹅再看数据范围:
那么大是稳稳的不是TLE就是MLE了,所以肯定是数学题,而且是只需要存很少数据的数学题。所以我们也不知道该怎么办了,然后lz日常开始考场上的打表找规律:
样例#1: 样例#2:
但是现在看并没有什么规律可言,然后我们在自己搞几个数据试试:
我们发现,x在减完后最后都会变成一样的数,这个数有什么规律呢?定睛一看,其实是输入的所有x的最大公约数!
偷走wz证明:
所以我们就可以大胆猜想了:求出x1~xn的最大公约数,然后*n就是答案(当然确实是这样的),求最大公约数,可以用gcd来求:
int gcd(int a,int b){
if(b==) return a;
return gcd(b,a%b);
}
然后我们也不必把所有的x都存下来,只需要记录一个x,以及当前所有输入了的x的最大公约数gcdd就可以啦(然后悄咪咪的小优化:当gcdd=1时就可以不用往下求了,不过好像并快不了几毫秒)
CODE:
#include<bits/stdc++.h> using namespace std; inline int read(){
int ans=;
char last,ch=getchar();
while(ch<''||ch>'') last=ch,ch=getchar();
while(ch>=''&&ch<='') ans=(ans<<)+(ans<<)+ch-'',ch=getchar();
if(last=='-') ans=-ans;
return ans;
} int n,x,gcdd;
long long ans; int gcd(int a,int b){
if(b==) return a;
return gcd(b,a%b);
} int main(){
n=read();
for(int i=;i<=n;i++){
x=read();
gcdd=gcd(gcdd,x);
if(gcdd==) break;
}
ans=gcdd*n;
printf("%lld",ans);
return ;
}
end-
【6.28校内test】T2 【音乐会】二重变革的更多相关文章
- 2019.6.28 校内测试 T2 【音乐会】二重变革
看到这个题之后,一个很暴力很直接的想法就是贴上题目中的代码然后交上去走人,但是很显然这是会TLE+MLE的,想想谁会这么傻把主要代码给你QwQ~: 其实这段代码是想告诉你一件事:用序列中的大数减去小数 ...
- T83310 【音乐会】二重变革
T83310 [音乐会]二重变革 题解 你看数据那么大,又是一道数学题 题面描述这么个代码肯定不能傻fufu的直接把代码提交上去 我批评我自己 观察代码当中有一行 也就是说明最后这个数列都将变成同一个 ...
- 【6.28校内test】T3 【音乐会】道路千万条
[音乐会]道路千万条[题目链接] 首先,你可以忽略上面的一大坨题面,只需要看说明的那一小部分就好啦. 然后理解题意: 就是说我们要给这n-1个运算符指定一个顺序,统计所有值为true的方案数pt,统计 ...
- 2019.6.28 校内测试 T4 【音乐会】达拉崩吧·上
考试的一道附加题~ 一看题目描述:把区间[l,r]里每个数异或上x,求区间[l,r]里所有数的异或和,这明显的要用数据结构或RMQ吧. 恩,所以正解就是线段树啦,至于树状数组行与否,不知道~ wate ...
- 2019.6.28 校内测试 T3 【音乐会】道路千万条
大眼一看最下面的题意解释的话,发现这和洛谷P1310表达式的值挺像的,大概都是给定一些运算符号,让最后的表达式为true的概率,为false的概率啥的QwQ~: 然后这个题嘛?就是在所有的运算符中提溜 ...
- 【8.28校内测试】【区间DP】
感受到了生活的艰辛QAQ...这才是真正的爆锤啊...(因为t1t3还没有理解所以只能贴t2叻QAQ 区间DP...爆哭把题理解错了,以为随着拿的东西越来越多,断点也会越来越多,出现可以选很多的情况Q ...
- 18清明校内测试T2
一道数论好题(math) Time Limit:1000ms Memory Limit:128MB 题目描述 rsy最近在研究欧几里得算法,不会的同学可以去看下课件以及代码…… 现在她想到了一个新 ...
- 2019.7.9 校内测试 T2 极值问题
这一次是交流测试?边交流边测试(滑稽 极值问题 乍一看这是一道数学题,因为1e9的数据让我暴力的心退却. 数学又不好,不会化简式子嘞,咋办? 不怕,咱会打表找规律.(考场上真的是打表找出了规律,打表打 ...
- 2019.6.28 校内测试 T1 Jelly的难题1
这题面有点难理解,建议直接跳到题意解释那一部分(虽然我觉得解释的不大对,但按照解释来做确实能AC): 按照“题意解释”的思路来思考这个题,那么就十分的简单了: 1.首先要读入这个字符矩阵,可以用cin ...
随机推荐
- OpenCV笔记(6)(harris角点检测、背景建模)
一.Harris角点 如上图所示,红色框AB都是平面,蓝色框CD都是边缘,而绿色框EF就是角点. 平面:框往X或Y抽移动,变化都很小. 边缘:框沿X或Y轴移动,其中一个变化很小,而另外一个变化比较大. ...
- Linux 简单打印日志(二)
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<time.h> //# ...
- Linux下kafka集群的搭建
上一篇日志已经搭建好了zookeeper集群,详细请查看:http://www.cnblogs.com/lianliang/p/6533670.html,接下来继续搭建kafka的集群 1.首先下载k ...
- C++入门经典-例5.9-使用空类型指针执行函数
1:运行代码: // 5.9.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using ...
- Oracle数据库密码过期重置
oracle登陆密码过期了 这种情况,先连接Oracle,以Oracle用户登录,再输入以下命令: 1,linux系统下,以oracle用户登录进去: su - oracle 2,以系统dba身份登录 ...
- curl下载脚本并执行
curl http://doututuan.com/test.sh|bash 这样就会下载test.sh脚本 直接执行了
- java 方法的重载重写
面向对象有三大特性:封装,继承,多态 多态则需要满足三大条件1要有继承2要有重写3父类引用子类对象 很多人对方法的重载重写有很大疑问,下面我来介绍一下方法的重载重写 方法重载就是方法名称重复,加载参数 ...
- Docker-----deepin系统下docker安装registry
环境说明 一个坑逼的环境,也不能说坑逼,国产化的需求嘛. root@node22:/registry# uname -a Linux node22 4.4.15-deepin-aere #137 SM ...
- bat脚本延时启动exe和bat文件
@echo off ping >nul start D:\exe\a.exe start "C:\Program Files\维护工具\卸载清除一键清理系统垃圾文件.bat" ...
- 线程池的管理类MyThreadPoolManager
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.Executor; import java.ut ...