“玲珑杯”ACM比赛 Round #19
Time Limit:2s Memory Limit:128MByte
Submissions:1599Solved:270
You have a sequence anan, which satisfies:
Now you should find the value of ⌊10an⌋⌊10an⌋.
#include <stdio.h> #include <math.h> int pow10(int i){ int ans=1; for(int j=0;j<i;j++)ans*=10; return ans; } int main(){ int n; while(~scanf("%d",&n)){ int ans=n+(int)log10(n*1.0); if(n==10)ans-=1; for(int i=2;i<=9;i++){int x=pow10(i);if(x+1-i<n&&n<x)ans++; } printf("%d\n",ans); } return 0;}
Time Limit:2s Memory Limit:128MByte
Submissions:699Solved:186
There are nn buildings lined up, and the height of the ii-th house is hihi.
An inteval [l,r][l,r](l≤r)(l≤r) is harmonious if and only if max(hl,…,hr)−min(hl,…,hr)≤kmax(hl,…,hr)−min(hl,…,hr)≤k.
Now you need to calculate the number of harmonious intevals.
#include <bits/stdc++.h> #define LL long long using namespace std; const int maxN = 2e5+10; int n, k, a[maxN]; LL ans; void input() {scanf("%d%d", &n, &k);for (int i = 0; i < n; ++i)scanf("%d", &a[i]); } void work() {ans = 0;deque<int> mi, ma;int p = 0;for (int i = 0; i < n; ++i) {while (!(mi.empty() && ma.empty()) &&!(abs(a[i]-a[mi.front()]) <= k && abs(a[i]-a[ma.front()]) <= k)) {p++;while (!mi.empty() && mi.front() < p)mi.pop_front();while (!ma.empty() && ma.front() < p)ma.pop_front();}ans += i-p+1;while (!mi.empty() && a[mi.back()] > a[i])mi.pop_back();mi.push_back(i);while (!ma.empty() && a[ma.back()] < a[i])ma.pop_back();ma.push_back(i);}printf("%lld\n", ans); }int main() {input();work();return 0; }
ST表
void rmqinit() { for(int i = 1; i <= n; i++) mi[i][0] = mx[i][0] = w[i]; int m = (int)(log(n * 1.0) / log(2.0)); for(int i = 1; i <= m; i++) for(int j = 1; j <= n; j++) { mx[j][i] = mx[j][i - 1]; if(j + (1 << (i - 1)) <= n) mx[j][i] = max(mx[j][i], mx[j + (1 << (i - 1))][i - 1]); mi[j][i] = mi[j][i - 1]; if(j + (1 << (i - 1)) <= n) mi[j][i] = min(mi[j][i], mi[j + (1 << (i - 1))][i - 1]); } } int rmqmin(int l,int r) { int m = (int)(log((r - l + 1) * 1.0) / log(2.0)); return min(mi[l][m] , mi[r - (1 << m) + 1][m]); } int rmqmax(int l,int r) { int m = (int)(log((r - l + 1) * 1.0) / log(2.0)); return max(mx[l][m] , mx[r - (1 << m) + 1][m]); }
转载于:https://www.cnblogs.com/BobHuang/p/7258287.html
“玲珑杯”ACM比赛 Round #19相关推荐
- lonlifeOJ1152 “玲珑杯”ACM比赛 Round #19 概率DP
E -- Expected value of the expression DESCRIPTION You are given an expression: A0O1A1O2A2⋯OnAnA0O1A1 ...
- “玲珑杯”ACM比赛 Round #21-C-战舰萝莉(线段树区间更新)
"玲珑杯"ACM比赛 Round #21 Start Time:2017-09-23 17:00:00 End Time:2017-09-23 19:30:00 Refresh T ...
- 玲珑杯”ACM比赛 Round #8-D XJT Loves Boggle(dfs)
记录一个菜逼的成长.. DESCRIPTION Boggle is a word game designed by Allan Turoff and distributed by Hasbro. It ...
- “玲珑杯”ACM比赛 Round #18 C -- 图论你先敲完模板【Dp】
C -- 图论你先敲完模板 Time Limit:5s Memory Limit:256MByte Submissions:660Solved:160 DESCRIPTION 今天HHHH在操场上跑步 ...
- “玲珑杯”ACM比赛 Round #18 ABC题解
A -- 计算几何你瞎暴力 Time Limit:5s Memory Limit:256MByte Submissions:1597Solved:301 DESCRIPTION 今天HHHH考完了期末 ...
- 玲珑杯”ACM比赛 Round #15 D 咸鱼商店【二分+01背包】
题目链接:http://www.ifrog.cc/acm/problem/1125 题目大意:中文题目,题意请仔细看题面. 解题思路:二分+01背包 01背包的最终结果与其中的顺序无关,我们要 ...
- “玲珑杯”ACM比赛 Round #4
运气不错有个抱枕. 1046 - chess play 题意: 一个n*m的数组,初始全部是'.',然后3种操作,把一个位置变成'w',或者把一个位置变成'r',或者交换两行. 思路: vector的 ...
- “玲珑杯”ACM比赛 Round #22 E【贪心】
题目: http://www.ifrog.cc/acm/problem/1171?contest=1024&no=4 题意: 输入一个字符串,将他重新排列,使得重排之后的字符串的最小表示法,最 ...
- “玲珑杯”ACM比赛 Round #24: C. この戦いが終わったら(BFS+bitset优化暴力)
C -- この戦いが終わったら 给你一个无向图,每次查询的时候给一堆二元组(xi,yi) 求图中有多少个点u与至少一个这次询问给出的二元组(xi,yi)满足dist(u,xi)<=yi,dist ...
最新文章
- Science:睡眠剥夺影响大脑思考竟是因为蛋白质罢工了!
- ML之MIC:利用某数据集计算机最大信息系数MIC并可视化MIC矩阵热图及其代码实现
- 2016江苏省盗取计算机技术,2016年江苏省职业学校技能大赛物联网技术应用与维护公开题库...
- sqlalchemy基本类型
- 您的计算机已实施了USB存储设备管理策略,设置usb设备管理
【解决步骤】
的教程_...
- [小白slam攻略]ROVIO安装运行及保存轨迹用evo评估
- CSS3重复渐变(线性和径向渐变)
- OS X: Messages Agent wants to use the login keychain
- 计算机科学与技术论文选题怎么选,比较好写的计算机科学与技术专业论文选题 计算机科学与技术专业论文题目如何取...
- 推荐:雨林木风Linux
- Error evaluating ORM mappings block for domain
- 深度剖析C语言符号篇
- PHP如何把word文档转换为html
- xml 以及JSON学习记录
- 原创 基于MC3362D的十米波段语音收发机电路图
- UIUC罗宇男:AI-assisted Scientific Discovery
- 送书来了|Python数据分析必备工具书
- [蓝桥杯2022初赛] 砍竹子
- Blob 文件下载 ,使用file-saver,判断数据是否为blob
- -march= 所带参数(armv4)不正确(2018-07-01)
热门文章
- 简单解决 WIN10更新后 远程桌面提示 CredSSP加密Oracle修正的问题
- IOS MenuController的部分操作
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法
- 数据结构上机实践第七周项目1 - 自建算法库——顺序环形队列
- glusphere设置球位置_玄武区举办桌上冰壶球比赛暨江苏省桌上冰壶球俱乐部联赛(玄武区站)活动...
- mysql空指针异常处理_mysql 查询空指针异常
- php 判定是否是数组,php判断一个数组是否为有序
- 斑马打印机怎么打印二维码_简单介绍斑马打印机---GX430t
- linux ipv4参数查看,Linux内核参数之IPV4变量引用
- manual 离线手册 韩顺平php_PHP - Manual: 手册的格式 (官方文档)