摘要:
"题目描述" 思路 用一个数组记录lowbit的值 代码 c++ include include int n, k; char st; int arr[500005], lowbit[500005]; void update(int x, int y) { while (x 阅读全文
摘要:
"题目描述" 思路 题目的意思是在[l, r]的所有整数位置都种树,每个点可以重复种,问[L, R]的树有多少种 一个树状数组start保存l,一个树状数组end保存r,保存的方式就是从update(x, 1) start 表示从l开始就可以种树了,end 表示从r就不可以种树了 sum函数 求得就 阅读全文
摘要:
"题目描述" 思路 1. 首先确定每个点是第几级 2. 然后统计第几级共有多少个点 首先,确定当前点是第几级,也就是找出这个点左下方有多少个点(不包括本身),由于给出的点是按y坐标从小到大排序,y坐标相同,x坐标从小到大排序,也就是说这个点以后的点因为y坐标过大或和当前点的y坐标相等(此时可以忽略x 阅读全文
摘要:
题目描述 这是一道模板题。 给定数列a[1], a[2], ..., a[n],你需要依次进行 q 个操作,操作有两类: 1 i x:给定 ,将 i 加上 x; 2 l r:给定 ,求 l 到 r 的和 输入格式 第一行包含 2 个正整数 ,表示数列长度和询问个数。保证 。 第二行 n 个整数 ,表 阅读全文
摘要:
"题目描述" 思路 使用哈希值表示较长串的子串的值,直接比较哈希值是否相等 代码 c++ include include using namespace std; char a[1000005], b[1000005]; unsigned int sum[1000005], sumb, bt[100 阅读全文
摘要:
"题目描述" 思路 使用字符串产生两个哈希值,一个哈希值决定链表的头,另一个哈希值决定在某个链表头的后面的某个位置。 代码 c++ include include include int n; char a[10], b[209]; int bs = 37, h1 = 90001, h2 = 900 阅读全文