构造矩阵:一开始随便写了一个矩阵发现为满足,每行每列的异或和为0又因为是4的倍数

然后每个数加上16去构造剩下得部分

#include <iostream>
#include <cstdio>
#include <stack>
#include <vector>
#include <map>
#include <cstring>
#include <deque>
#include <unordered_map>
#include <cmath>
#include <iomanip>
#include <queue>
#include <algorithm>
#include <set>
#define mid ((l + r) >> 1)
#define Lson rt << 1, l , mid
#define Rson rt << 1|1, mid + 1, r
#define ms(a,al) memset(a,al,sizeof(a))
#define sfx(x) scanf("%lf",&x)
#define sfxy(x,y) scanf("%lf%lf",&x,&y)
#define sdx(x) scanf("%d",&x)
#define sdxy(x,y) scanf("%d%d",&x,&y)
#define pfx(x) printf("%.0f\n",x)
#define pfxy(x,y) printf("%.6f %.6f\n",x,y)
#define pdx(x) printf("%d\n",x)
#define pdxy(x,y) printf("%d %d\n",x,y)
#define _for(i,a,b) for( int i = (a); i < (b); ++i)
#define _rep(i,a,b) for( int i = (a); i <= (b); ++i)
#define for_(i,a,b) for( int i = (a); i >= (b); -- i)
#define rep_(i,a,b) for( int i = (a); i > (b); -- i)
#define IOS std::ios::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define INF 0x3f3f3f3f-
#define hash Hash
#define next Next
#define f first
#define s second
#define lowbit(x) (x & (-x))
using namespace std;
const int N = 2e5 + 10, eps = 1e-10;typedef long long LL;
typedef unsigned long long ULL;
typedef pair<LL,LL> PII;int n;
int a[1010][1010];void grid(int x, int y, int begin)
{if(y == n) return;_for(i,x,x+4)_for(j,y,y+4)a[i][j] = begin ++;grid(x,y+4,begin);// begin = grid(x+4,y,begin);return;
}int main()
{IOS;cin >> n;int b = 0;for(int i = 0; i < n; i += 4){grid(i,0,b);b += n * 4;}_for(i,0,n){_for(j,0,n)cout << a[i][j] << " ";cout << endl;}return 0;
}


题意:
给一个数N和N个数每个数记录的是原数列N中该位置之前比其小的数之和 问原数列是多少 原数列每个数大小在1-N之间
例子
3
原数列 3 2 1
所以该数列为 0 0 0 以下同理

很明显是树状数组的求第k大数的板子题

我的博客树状数组有讲;

下面我们来再讲一下tree[x]的含义

tree[x] 是 1 到 x - 1的前缀和,每一次我们二分查找一下x的下标

我们来举个例子

5

0 1 1 1 10;

树状数组 1 2 3 4 5

------- idx 0 1 3 6 10;

我们逆序查找




每次查询一个数使用后我们都要把它删掉,如果有多个数的前缀和相同取最后一个,因为前面被用过了;下面看代码

#include <iostream>
#include <cstdio>
#include <stack>
#include <vector>
#include <map>
#include <cstring>
#include <deque>
#include <unordered_map>
#include <cmath>
#include <iomanip>
#include <queue>
#include <algorithm>
#include <set>
#define mid ((l + r) >> 1)
#define Lson rt << 1, l , mid
#define Rson rt << 1|1, mid + 1, r
#define ms(a,al) memset(a,al,sizeof(a))
#define sfx(x) scanf("%lf",&x)
#define sfxy(x,y) scanf("%lf%lf",&x,&y)
#define sdx(x) scanf("%d",&x)
#define sdxy(x,y) scanf("%d%d",&x,&y)
#define pfx(x) printf("%.0f\n",x)
#define pfxy(x,y) printf("%.6f %.6f\n",x,y)
#define pdx(x) printf("%d\n",x)
#define pdxy(x,y) printf("%d %d\n",x,y)
#define _for(i,a,b) for( int i = (a); i < (b); ++i)
#define _rep(i,a,b) for( int i = (a); i <= (b); ++i)
#define for_(i,a,b) for( int i = (a); i >= (b); -- i)
#define rep_(i,a,b) for( int i = (a); i > (b); -- i)
#define IOS std::ios::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define INF 0x3f3f3f3f-
#define hash Hash
#define next Next
#define f first
#define s second
#define lowbit(x) (x & (-x))
using namespace std;
const int N = 2e5 + 10, eps = 1e-10;typedef long long LL;
typedef unsigned long long ULL;
typedef pair<LL,LL> PII;int n;
LL a[N];
LL tree[N];
int ans[N];
LL sum(int x)
{LL res = 0;while(x){res += tree[x];x -= lowbit(x);}return res;
}void add(int x, LL sum)
{while(x <= n){tree[x] += sum;x += lowbit(x);}return;
}int main()
{IOS;cin >> n;_for(i,1,n+1) cin >> a[i], add(i+1,i);for_(i,n,1){LL l = 1, r = n;while(l < r){int m = (l + r + 1) / 2;if(sum(m) <= a[i]) l = m;else r = m - 1;}cout << "tree" << endl;_for(j,1,n+1)cout << sum(j) << " idx = " << j << endl;cout << "r " << r << endl;cout << a[i] << "= a[i]"<<endl;cout << endl;ans[i] = r;add(r+1,-r);}_for(i,1,n+1)cout << ans[i] << " ";return 0;
}

每日一套szuManthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)相关推荐

  1. Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) F. Bits And Pieces sosdp预处理超集

    传送门 文章目录 题意: 思路: 题意: n≤1e6,ai≤2e6n\le1e6,a_i\le2e6n≤1e6,ai​≤2e6 思路: 由于(aj&ak)(a_j \And a_k)(aj​& ...

  2. Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)

    Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) 题号 题目 知识点 A XORinacci B Uniqueness ...

  3. Codefest 18 (rated, Div. 1 + Div. 2)-D-Valid BFS--思维--已知bfs序,求是否正确

    Codefest 18 (rated, Div. 1 + Div. 2)-D-Valid BFSvj地址 题意:给你一段bfs序列,让你判断是否正确 思路:先给节点排序(很关键) 我们给每一个的点的邻 ...

  4. 全国计算机等级考试题库二级C操作题100套(第19套)

    第19套: 程序通过定义学生结构体变量,存储了学生的学号.姓名和3门课的成绩.函数fun的功能是将形参a所指结构体变量s中的数据进行修改,并把a中地址作为函数值返回主函数,在主函数中输出修改后的数据. ...

  5. 《每日一题》NO.19:SoC芯片验证包括哪些内容?

    芯司机< 每日一题>会每天更新一道IC面试笔试题(其中有些题目已经被很多企业参考采用了哦),聪明的你快来挑战一下吧! 今天是第19题 作为"武当派"的验证工程师,被各大 ...

  6. 【每日早报】2019/07/19

    今日看点 ✦ 陆金所回应停止网贷业务:配合监管"三降"要求,存量产品与客户权益不受影响 ✦ 贝壳找房:<贝壳找房专项股权基金>非官方文件,目前无明确上市时间和地点 ✦ ...

  7. 公路多孔箱涵设计_双孔8x3.3米钢筋混凝土箱涵设计套图(19张)

    内容简介 技术指标: (1) 安全等级:一级. (2) 设计荷载:汽车荷载:城市-A级;人群-3.4KPa. (3) 顶底面控制:底板顶按0.50m控制,顶板底按3.80m控制. (4) 涵内净空:净 ...

  8. 倪文迪陪你学蓝桥杯2021寒假每日一题:1.19日(2018省赛A组第7题)

    2021年寒假每日一题,2017~2019年的省赛真题. 本文内容由倪文迪(华东理工大学计算机系软件192班)和罗勇军老师提供. 后面的每日一题,每题发一个新博文,请大家每天看博客蓝桥杯专栏: htt ...

  9. 每日一套codeforce集训1119E[贪心],821C[栈模拟],645D[拓扑排序]

    有n种长度的棍子,长度分别为2^0 ,2 ^ 1,-,2 ^ (n-1) ,每种棍子有a[i] 种,问你能组成多少个三角形. 三角形两边之和大于第三边,而2 ^ i + 2 ^ i = 2 ^ (i+ ...

最新文章

  1. 离散数学当中的部分符号总结
  2. 使用Tensorflow构建和训练自己的CNN来做简单的验证码识别
  3. 网站架构相关PPT、文章整理
  4. 产品经理,如何建立自己独特的产品观?(转)
  5. why we need getCoreClasses()
  6. ecshop3.0.0注入
  7. Python实战之多线程编程threading.Thread
  8. php5.6 mysql被重置_php5.6连接mysql8出现错误解决方法
  9. MT4指标安装方法,以MACD红绿柱黄白线双线macd为例
  10. 微信扫一扫地标识别技术揭秘
  11. mysql异地双活架构,银行跨数据中心数据库双活架构设计:五大难点攻克
  12. 关于Office32与Office64版本冲突的问题解决
  13. 【诗词】八声甘州·摘青梅荐酒 (羡青山有思,白鹤忘机。)
  14. 「诗云科技」获IDG资本领投数百万美元Pre-A轮融资,研发内容生成引擎Surreal Engine
  15. 2021阿里云供应链大赛--需求预测与单级库存优化参赛总结
  16. 2021巅峰极客逆向baby_maze题wp
  17. java nul 字符_Java字符串替换和NUL(NULL,ASCII 0)字符?
  18. qlv视频格式怎么转换成常用的mp4格式
  19. jwt单点登录 和防重放攻击
  20. 海奥华预言--第七章 慕大陆和远东岛

热门文章

  1. Python翻转字典,以及解决IndentationError: expected an indented block报错!
  2. 1003 我要通过! (20point(s))
  3. zabbix 清空历史表
  4. 整理一下自己手撸的博客
  5. haproxy 反向代理 tomcat (https、负载均衡)
  6. 2分钟读懂Hadoop和Spark的异同
  7. javascript的typeof返回哪些数据类型
  8. TODO:macOS编译PHP7.1
  9. LVS Nginx HAProxy 优缺点
  10. 2014-02-26_javascript_event