Codeforces Round #633 (Div. 2) C. Powered Addition
题目链接
思路:要让他成为一个递增数组,并且需要的最小秒数来完成。那么可以想到,由于是任意选择几个下标去加上2的x-1次方。那么我们枚举在任意一个数之前的最大值,如果这个最大值比他还小就满足条件,否则就要至少加上几秒。这个几秒我用的前缀和。。表述不是很清楚,看代码就完事
#include <bits/stdc++.h>
using namespace std;
#define NewNode (ListNode *)malloc(sizeof(ListNode))
#define Mem(a,b) memset(a,b,sizeof(a))
const int N = 2e5 + 50;
const int INF = 0x3f3f3f3f;
const double EPS = 1e-10;
const unsigned long long mod = 998244353;
const int II = 3.1415926535;
typedef long long ll;
typedef unsigned long long ull;
typedef pair <int,int> pii;
int main()
{std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);ll t;cin >> t;ll ans[50] = {0};for(int i = 1;i < 50;i++){ans[i] = pow(2,i-1);ans[i] += ans[i-1];//前缀和}while(t--){ll n,x = 0,Max = 0,MaxMax;cin >> n;ll arr[n+5];for(int i = 0;i < n;i++)cin >> arr[i];MaxMax = arr[0];//前几个数的最大值for(int i = 1;i < n;i++){ll num = MaxMax - arr[i];for(int j = 0;j < 50;j++){if(num <= ans[j]){x = j;//最少需要多少秒break;}}MaxMax = max(MaxMax,arr[i]);Max = max(Max,x);}cout << Max << endl;}
}
Codeforces Round #633 (Div. 2) C. Powered Addition相关推荐
- Codeforces Round #633 (Div. 2) C.Powered Addition
Codeforces Round #633 (Div. 2) C.Powered Addition 题目链接 You have an array a of length n. For every po ...
- Codeforces Round #633 B. Edge Weight Assignment 结论题 + dp
传送门 文章目录 题意: 思路: 题意: 思路: 首先考虑最小值,如果从一个叶子结点出发到任意叶子的距离都为偶数,那么只需要一个值就可以满足条件.如果有奇数的,考虑111 ^ 222 ^ 3=03=0 ...
- Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解(每日训练 Day.16 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解 比赛链接:h ...
- Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...
- Codeforces Round #701 (Div. 2) A ~ F ,6题全,超高质量良心题解【每日亿题】2021/2/13
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Add and Divide B - Replace and Keep Sorted C ...
- Codeforces Round #507 (Div. 1) D. You Are Given a Tree 根号分治 + dp
传送门 题意: 有一颗nnn个节点的树,其中一个简单路径集合被称为kkk合法当且仅当: 树的每个节点至多属于一条路径,且每条路径恰好包含kkk个点. 对于k∈[1,n]k\in [1,n]k∈[1,n ...
- Codeforces Round #538 (Div. 2) F. Please, another Queries on Array? 线段树 + 欧拉函数
传送门 文章目录 题意: 思路: 题意: 给你一个序列aaa,你需要实现两种操作: (1)(1)(1) 将[l,r][l,r][l,r]的aia_iai都乘rrr. (2)(2)(2) 求ϕ(∏i= ...
- Codeforces Round #742 (Div. 2) F. One-Four Overload 构造 + 二分图染色
传送门 文章目录 题意: 思路: 题意: 给你一个n∗mn*mn∗m的矩形,包含...和XXX,你有两种颜色,你需要给...染色使得每个XXX上下左右相邻的...其两种颜色个数相同,输出一种合法方案. ...
- Codeforces Round #743 (Div. 2) E. Paint 区间dp + 暴力
传送门 文章目录 题意: 思路: 题意: 给你一个有nnn个像素的图像,每个像素都有一个颜色aia_iai,保证每种颜色的图像不会超过202020个.你现在每次可以选择一个颜色,并选择一段连续的像素 ...
- Codeforces Round #743 (Div. 2) D. Xor of 3 模拟 + 构造
传送门 文章目录 题意: 思路: 题意: 给你一个010101序列aaa,定义一次操作是选择一个[1,n−2][1,n-2][1,n−2]范围内的下表,将ai,ai+1,ai+2a_i,a_{i+1} ...
最新文章
- linux下用c 开发web,用C一步步开发web服务器(2)
- 市场与需求带动 向智能安放转型成大势所趋
- egg(87)--egg之redis的安装使用
- Python的程序结构[4] - 函数/Function[2] - 匿名函数
- 2016最新php支付平台源码,Thinkphp各大支付平台在线支付集成源码
- Image Gallery
- Objective-C 基础,类和对象,方法和消息,已声明的属性和存取方法,块对象,协议和范畴类,预定义类型和编码策略...
- OBS录制黑屏的解决办法
- Multi-Object Trackers
- Oracle官网登录下载资源账号
- MySQL第一讲-mysql的基本框架和查询命令流程
- Python实例篇:这样操作PDF文件一点都不枯燥了
- ThinkPad物理机安装Linux系统实战企业级项目之CentOS安装
- 灰色关联分析过程及代码实现
- + kt360buy - 牛肉丸是用牛的什么部位做的
- 20161012 Python 读书笔记之 输出、循环
- lms算法的verilog实现_最小均方算法(LMS Algorithm)理论及DSP实现
- 计算机毕业设计Python+djang的图书馆图书借阅归还管理系统(源码+系统+mysql数据库+Lw文档)
- 【Info】车载芯片的几个大玩家:飞思卡尔(Freescale), 恩智浦(NXP), 高通(Qualcomm)
- Framebuffer、DRM、EXA和Mesa简介