1161 - 康娜的数学课

Time Limit:1s Memory Limit:256MByte

Submissions:615Solved:221

DESCRIPTION

康娜上三年级了,老师要教她一些简单的算术。

出题人:啊,为什么康娜这么萌
具体而言,老师总共给了康娜 nn 个问题,每个问题是这样的~
给你 x,l,rx,l,r , [l,r][l,r] 以内的每一个数均可以使用任意次,请问你能不能让他们的和为 xx
这个题实在是太简单啦,于是康娜一眼就看出来了。
现在康娜把这题拿给了你,你能不能做出来呢?

INPUT
第一行一个整数 nn ,表示康娜询问的次数接下来 nn 行,每行三个整数 x,l,rx,l,r 意义如上。
OUTPUT
共 nn 行,如果能表示出则输出“QWQ” (不包括引号),如果不能表示出则输出"TAT"(不包括引号)
SAMPLE INPUT
15 2 3
SAMPLE OUTPUT
QWQ
HINT
n≤10000n≤100001≤x,l,r≤10181≤x,l,r≤1018
SOLUTION
“玲珑杯”ACM比赛 Round #20

x一定要在[l,r]的整数倍的所有区间的并集里面。所以只需要枚举某一区间即可。一除法确定r,一模确定是否在区间内。

#include<bits/stdc++.h>
using namespace std;int main(){int n;scanf("%lld",&n);long long x,l,r,t1,t2;while(n--){scanf("%lld%lld%lld",&x,&l,&r);t1=t2=0;t1=x/l; t2=x%l;if(t2<=(r-l)*t1)puts("QWQ");else puts("TAT");  }return 0;
}
1157 - 造物主的戒律

Time Limit:20s Memory Limit:512MByte

Submissions:871Solved:109

DESCRIPTION






造物主的戒律,空气,变成数据结构!
于是空气变成了数据结构~
给你一个序列,每次查询区间中小于等于x的所有数字里面第k1k1小的值以及大于x的所有数字里面第k2k2小的值,如果不存在,输出-1
每次输出两个数,对于每个数如果不存在,则单独输出-1

INPUT
第一行两个数n,m第二行n个数表示序列a后面m行每行五个数l,r,x,k1,k2
OUTPUT
对于每个查询输出答案
SAMPLE INPUT
5 51 2 3 4 51 5 3 1 22 5 2 1 32 3 3 3 33 3 3 3 33 3 3 3 3
SAMPLE OUTPUT
1 52 5-1 -1-1 -1-1 -1
HINT
n,m<= 400000 ,0 <= a[i] <= 1000000000大家想知道这游戏叫什么吗叫liber7这个叫由乃的真的有毒。——来自另一个出题人。----------------------484觉得图多。我会告诉你我删了好多张了么。当然会,图好多还超级大。我都给它缩小了。——来自一个上题人
SOLUTION
“玲珑杯”ACM比赛 Round #20

主席树询问区间k小值。对于大于x的第k小数,先查小于等于x的总共有几个,然后再查这个区间的第x+k小的数。

#include <bits/stdc++.h>
using namespace std;const int MAXN = 400010;
const int M = MAXN * 30;
int n,q,m,tot;
int a[MAXN], t[MAXN];
int T[MAXN], lson[M], rson[M], c[M];void Init_hash()
{for(int i = 1; i <= n; i++)t[i] = a[i];sort(t+1,t+1+n);m = unique(t+1,t+1+n)-t-1;
}
int build(int l,int r)
{int root = tot++;c[root] = 0;if(l != r) {int mid = (l+r)>>1;lson[root] = build(l,mid);rson[root] = build(mid+1,r);}return root;
}int update(int root,int pos,int val)
{int newroot = tot++, tmp = newroot;c[newroot] = c[root] + val;int l = 1, r = m;while(l < r) {int mid = (l+r)>>1;if(pos <= mid) {lson[newroot] = tot++;rson[newroot] = rson[root];newroot = lson[newroot];root = lson[root];r = mid;} else {rson[newroot] = tot++;lson[newroot] = lson[root];newroot = rson[newroot];root = rson[root];l = mid+1;}c[newroot] = c[root] + val;}return tmp;
}int getsum(int left_root,int right_root,int x)
{if (x==0) return 0;int l = 1, r = m;int res = 0;while( l < r) {int mid=(l+r)>>1;if (mid<=x) {res+=c[lson[left_root]]-c[lson[right_root]];l=mid+1;left_root = rson[left_root];right_root = rson[right_root];} else {r=mid;left_root = lson[left_root];right_root = lson[right_root];}}return res;
}int getkth(int left_root,int right_root,int k)
{int l = 1, r = m;while( l < r) {int mid = (l+r)>>1;if (c[left_root]-c[right_root] < k || k == 0) return -1;if (c[lson[left_root]]-c[lson[right_root]] >= k ) {r = mid;left_root = lson[left_root];right_root = lson[right_root];} else {l = mid + 1;k -= c[lson[left_root]] - c[lson[right_root]];left_root = rson[left_root];right_root = rson[right_root];}}return l;
}namespace fastIO {#define BUF_SIZE 10000000//fread -> readbool IOerror = 0;inline char nc() {static char buf[BUF_SIZE], *p1 = buf + BUF_SIZE, *pend = buf + BUF_SIZE;if(p1 == pend) {p1 = buf;pend = buf + fread(buf, 1, BUF_SIZE, stdin);if(pend == p1) {IOerror = 1;return -1;}}return *p1++;}inline bool blank(char ch) {return ch == ' ' || ch == '\n' || ch == '\r' || ch == '\t';}inline void read(int &x) {char ch;while(blank(ch = nc()));if(IOerror)return;for(x = ch - '0'; (ch = nc()) >= '0' && ch <= '9'; x = x * 10 + ch - '0');}#undef BUF_SIZE
};int main()
{using namespace fastIO;read(n);read(q);tot = 0;for (int i = 1; i <= n; i++) {read(a[i]);}Init_hash();T[n+1] = build(1,m);for (int i = n; i ; i--) {int pos = lower_bound(t+1,t+1+m,a[i])-t;T[i] = update(T[i+1],pos,1);}while (q--) {int l,r,x,k1,k2;read(l);read(r);read(x);read(k1);read(k2);x=upper_bound(t+1,t+1+m,x)-t-1;int s=getsum(T[l],T[r+1],x);int a=getkth(T[l],T[r+1],k1);if (a > x) a=-1;if (a!=-1) a=t[a];int b=getkth(T[l],T[r+1],s + k2);if (b!=-1) b=t[b];printf("%d %d\n",a,b);}return 0;
}

玲珑杯 Round #20相关推荐

  1. UOJ Round #20 T1 A. 【UR #20】跳蚤电话(组合数+树形DP)

    UOJ Round #20 T1 A. [UR #20]跳蚤电话 题目大意 给出一棵树,求建出该树的不同操作方案数.建树方式如下:初始 S S S集合只有 1 1 1,操作 1 1 1为取已连的边 x ...

  2. 玲珑杯round#11 ----A

    有一批n个数据需要通过rpc调用获取信息,为了加快速度,我们想要把n个数据平均分成若干份,每份的数据量为x(x可以整除n),假设一次rpc调用所需要的时间为a+b*x^2(其中a.b为常数),那么当给 ...

  3. Educational Codeforces Round 20 B. Distances to Zero

    B. Distances to Zero time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  4. codeforce golobal round 20 - 1672D - Cyclic Rotation

    1672D - Cyclic Rotation 题意:给长度相等的数组 a 和 b ,判断能否通过以下操作将 a 变为 b . 在 a 数组中一段子数组,若两端的数相同,该段向左旋转一位 分析: 想想 ...

  5. 玲珑杯 1157 - 造物主的戒律 主席树+离散化

    题目链接:http://www.ifrog.cc/acm/problem/1157 1157 - 造物主的戒律 Time Limit:20s Memory Limit:512MByte Submiss ...

  6. python round函数_Python round() 函数

    这个一直都想写,但是因为这个点比较小,所以一直懒得动手.不过还是补上吧,留着早晚是个祸害. round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10. ...

  7. python round函数_python中round函数如何使用

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

  8. Python 中关于 round 函数的小坑

    这个一直都想写,但是因为这个点比较小,所以一直懒得动手.不过还是补上吧,留着早晚是个祸害. round函数很简单,对浮点数进行近似取值,保留几位小数.比如: >>> round(10 ...

  9. python中round函数参数_python中关于round函数的小坑

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

最新文章

  1. 教育部:建设100+AI特色专业, 500万AI人才缺口要补上!
  2. Fedora开启telnet服务
  3. [architecture]-AMBA AXI AHB APB学习总结
  4. python多态_Python面向对象教程之多态
  5. 第36-37 Tomcat SVN
  6. Jakarta EE中的规范范围
  7. nodejs,express链式反应
  8. webpack5 模块联邦 single-spa基座微前端 systemjs
  9. matlab最小二乘法_基于最小二乘法的线性回归拟合
  10. java se ee me都有什么区别?
  11. Check Point在Google Play上发现大批感染Judy恶意软件的应用
  12. linux下c程序 daemon、fork与创建pthread的顺序问题
  13. JS数据结构第五篇 --- 二叉树和二叉查找树
  14. MessageDialog MessageDialogPage
  15. 线程结束后会自动关闭_多线程学习之如何中断线程
  16. android 挖孔屏适配_娜迦丨不只满足Android 10版本的完美适配,更积极与鸿蒙系统超前对接...
  17. 常见电脑故障自检指南(南城ZW)
  18. Delphi 技术的优缺点与应用
  19. 虚拟机搭建服务器实验报告,架设服务器实验报告.pdf
  20. html 标签的语义化

热门文章

  1. 常用好用的远程连接工具分享
  2. 红米note9和华为nova8SE哪个好
  3. 面试常见IT术语的英文日文英语日语翻译(不断更新中)
  4. [玩游戏想道理]战略的感受
  5. 3-3 查询水果价格 (15分)
  6. Vue中$emit的用法
  7. 西工大客户端邮箱配置
  8. js-xlsx 导出Excel
  9. xlwings(python与excle交互模块)
  10. ECRS原则下的vioovi-工厂提效神器~