首页 > TAG信息列表 > CQOI2006

P5057 [CQOI2006]简单题

#include <bits/stdc++.h> #define LL long long using namespace std; const int N = 2e5 + 10; int n, m; int w[N]; struct node { int l, r; int tag; }tr[N << 2]; void pushdown(int u) { if (tr[u].tag) { tr[u << 1].tag = !tr

洛谷 P5057 [CQOI2006]简单题 题解

P5057 [CQOI2006]简单题 题目描述 有一个 n 个元素的数组,每个元素初始均为 0。有 m 条指令,要么让其中一段连续序列数字反转——0 变 1,1 变 0(操作 1),要么询问某个元素的值(操作 2)。 例如当 n = 20 时,10 条指令如下: 输入格式 第一行包含两个整数 n, m,表示数组的长度和指令的条数; 以下

P4196 [CQOI2006]凸多边形(半平面交)

P4196 [CQOI2006]凸多边形 半平面交板子。 #include<iostream>#include<cmath>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const double eps=1e-5;int dcmp(double x) {return fabs(x)<eps?0:(x<0?-1:1);}struct Po

洛谷 P5057 [CQOI2006]简单题(树状数组)

嗯...   题目链接:https://www.luogu.org/problem/P5057   首先发现这道题中只有0和1,所以肯定与二进制有关。然后发现这道题需要支持区间更改和单点查询操作,所以首先想到的是异或意义下的差分数组,于是自己便写了一个差分数组,确实好写,但很慢(可能我写的不优),下面是五十分的异或意义下

BZOJ2618 CQOI2006 凸多边形

乱搞.jpg 直接看成直线半平面交qwq 挺好写的w //Love and Freedom.#include<cstdio>#include<cmath>#include<algorithm>#include<cstring>#define ll long long#define inf 20021225#define db double#define eps 1e-8#define N 1010using namespace std;struct poi