
乱搞
Sirius_Ren
▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇自己刮~~~
展开
-
POJ 1654 乱搞题?
题意: 从一个点出发,8个方向,给出每一步的方向,求出走过的路径形成的多边形的面积。 思路: 先普及一下向量叉乘、、 (摘自度娘) 也就是x1y2-x2y1。 那这不就好说了嘛。 一个经过原点的闭合多边形的面积可以分割成多个三角形。 每个三角形的面积就是相邻向量叉乘的一半。 大功告成~ 注意精度问题。。。// by SiriusRen#include <cstdio>#i原创 2016-07-11 20:35:01 · 247 阅读 · 0 评论 -
POJ 3173 模拟
按照题意模拟就好……//By SiriusRen#include <cstdio>#include <algorithm>using namespace std;int n,s,tot;char a[21][21];int main(){ scanf("%d%d",&n,&s); for(int i=1;i<=n;i++) for(int j=1;j<i;原创 2016-09-14 23:48:13 · 452 阅读 · 0 评论 -
POJ 1951 模拟
思路: 坑爹模拟毁我一生 给两组数据: 输入: YOURE TRAVELING THROUGH ANOTHER DIMENSION A DIMENSION NOT OF SIGHT.输出: YR TVLNG H DMS F.注意“.”前面没有空格。。。 别问我怎么知道的……(。・・)ノ输入: MADAM I SAY I AM ADAM输出: MD SY注意 如果第一个单词前面有空格原创 2016-08-26 12:10:17 · 325 阅读 · 0 评论 -
POJ 2189 枚举
题意: n头牛,p长度的道路,问至多包括c头牛的道路最长有多长。思路: 按照题意暴力就好…… 注意边界。// by SiriusRen#include <cstdio>#include <algorithm>using namespace std;int n,p,c,a[1005],vis[1005],ans=0,i,j;int main(){ scanf("%d%d%d",原创 2016-08-26 19:51:48 · 845 阅读 · 0 评论 -
POJ 2190 模拟
按照题意模拟就好…注意“X”只能出现在最后一位。。。// by SiriusRen#include <cstdio>using namespace std;char s[15],mark;int main(){ scanf("%s",s+1); int temp=0; for(int i=10;i;i--){ if(s[11-i]=='X')s[11-原创 2016-08-26 20:10:24 · 727 阅读 · 0 评论 -
POJ 3276 枚举+差分?
题意: 思路: 先枚举一下k 贪心:如果当前是B那么就翻 差分一下序列 mod2 就OK了//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,s[5555],reck,reans=0x3fffffff,vis[5555];char j原创 2016-10-10 23:10:25 · 406 阅读 · 0 评论 -
POJ 3665 模拟
按照题意模拟就OK了//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,t,a[1005];int main(){ scanf("%d%d",&n,&t); for(int i=1;i<=n;i++){ scanf("原创 2016-09-25 15:44:41 · 614 阅读 · 0 评论 -
POJ 3263 差分+set判重
题意: 思路: 对于每一个区间 [a,b] [a+1,b-1]肯定是比a,b低至少1的 因为题目要求最大值 所以就直接差分一下 搞之 (复杂度 O(n)) Discuss里说有重复的数据 用set判一下重就好了复杂度O(nlogn)//By SiriusRen#include <set>#include <cstdio>#include <cstring>#原创 2016-10-12 08:00:26 · 673 阅读 · 0 评论 -
POJ 3668 枚举?
枚举两点,算一下斜率 sort一遍 判个重 输出解 25行 搞定…//By SiriusRen#include <cmath>#include <cstdio>#include <algorithm>using namespace std;int n,top,ans;double x[205],y[205],s[40005],temp;int main(){ scanf原创 2016-09-26 23:01:00 · 388 阅读 · 0 评论 -
POJ 3671 DP or 乱搞
思路: 1.DP f[i][j]:前i个数 最后一个数是j的最小花费 f[i][j]=min(f[i][j],f[i-1][k]+(a[i]!=j));1<=k<=j 这种做法比较有普遍性… 2. 直接枚举断点乱搞不就行了嘛… 枚举在哪儿转折成的2 (注意全是1或者全是2的情况就OK了)//By SiriusRen#include <cstdio>#include <cstring原创 2016-09-28 13:38:32 · 613 阅读 · 0 评论 -
POJ 3279 枚举?
思路: 1.枚举第一行 递推剩下的 判断最后一行成不成立 2. (误)高斯消元? 如何判断1最少和字典序最小… (所以这种做法好像不可取)//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,m,a[16][16],temp[16][16]原创 2016-09-28 13:42:12 · 690 阅读 · 0 评论 -
POJ 3672 水题......
5分钟写完 水水更开心//By SiriusRen#include <cstdio>#include <iostream>#include <algorithm>using namespace std;int m,t,u,f,d;char jy;int main(){ scanf("%d%d%d%d%d",&m,&t,&u,&f,&d); for(int i=1;i原创 2016-09-28 13:43:23 · 469 阅读 · 0 评论 -
POJ 3193 字符串排序+比较
思路: 1. 先把那m个排个序 此后每回二分+strncmp一下就好了strncmp是个好东西啊……2. hash判判 (注意 hash会有冲突…………………….)//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,m,ans;struc原创 2016-10-23 22:35:22 · 506 阅读 · 0 评论 -
POJ 2436 二进制枚举
题意: 思路: 拆成二进制枚举 有哪个病毒在 判一判 就好了//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,d,k,jy,xx,a[1005],tmp[1005],ans;int main(){ scanf("%d%d%d"原创 2016-10-26 17:55:43 · 740 阅读 · 0 评论 -
POJ 2433 枚举
题意: 思路: 每回枚举去哪个山包 枚举的姿势很重要//By SiriusRen#include <cstdio>#include <algorithm>using namespace std;int n,k,a[1005],l,r,base,cnt,ans,minn,recl,recr,recbase;int main(){ scanf("%d%d",&n,&k);原创 2016-10-27 19:52:41 · 808 阅读 · 0 评论 -
POJ 2459 模拟
题意: 思路: 按照题意模拟即可//By SiriusRen#include <cstdio>using namespace std;int c,f1,f2,d,xx,yy,vis[2005];int main(){ scanf("%d%d%d%d",&c,&f1,&f2,&d); for(int i=1;i<=c;i++){ scanf("%d%原创 2016-10-29 11:04:13 · 566 阅读 · 0 评论 -
POJ 2141 模拟
思路:字符串解密 啥都告诉你了 模拟就好//By SiriusRen#include <cstdio>#include <cstring>using namespace std;char a[666],ch[666],b[6666];int main(){ for(int i=0;i<256;i++)ch[i]=i; for(int i=0;i<=26;i++)a[i原创 2016-10-31 08:57:06 · 583 阅读 · 0 评论 -
POJ 3187 全排列+杨辉三角(组合数)
思路: next_permutation()加个递推组合数随便搞搞就A了…//By SiriusRen#include <cstdio>#include <algorithm>using namespace std;int n,C[11][11],sum,f[11];int main(){ scanf("%d%d",&n,&sum); for(int i=1;i<=n;i原创 2016-09-14 23:47:06 · 633 阅读 · 0 评论 -
NOIP 2012 T2 国王游戏 (贪心+高精)
思路:呃呃网上那么多题解写得都不错…..就是高精 巨坑。。。这里展出的是任氏高精(纯自己yy滴)//By SiriusRen#include <cstdio>#include <cstring>#include <algorithm> using namespace std;int n,temp[5555],len,A[5555],ans[5555],ans_max;char s[11]原创 2016-08-30 23:29:31 · 667 阅读 · 0 评论 -
POJ 1471 模拟?
题意:求最大无坏点三角形 思路: 模拟? (为什么我模拟过了。。。)// by SiriusRen#include <cstdio>#include <cstring>#include <iostream>using namespace std;char a[222][222];int cases=0,n,ans,answer,flag;int main(){ while原创 2016-07-23 17:36:39 · 491 阅读 · 0 评论 -
POJ 1995 快速幂
题意:直接解释输入了,,,先输入个数字t表示t组数据,每组数据前两行各一个数M,H。 接下来H行每行俩数 Ai,Bi。 让求下式的结果。 // by SiriusRen#include <cstdio>using namespace std;int t,m,h,ans,xx,yy;int cheng(int x,int y){ int ret=1,now=x%m; whi原创 2016-07-03 22:33:36 · 321 阅读 · 0 评论 -
POJ 1330 Tarjan LCA、ST表(其实可以数组模拟)
题意:给你一棵树,求两个点的最近公共祖先。 思路:因为只有一组询问,直接数组模拟好了。 (写得比较乱) 原题请戳这里#include <cstdio>#include <bitset>#include <cstring>#include <algorithm>using namespace std;int first[10005],v[10005],next[10005];int原创 2016-04-10 23:28:56 · 937 阅读 · 0 评论 -
POJ 3250 单调栈
一群高度不完全相同的牛从左到右站成一排,每头牛只能看见它右边的比它矮的牛的发型,若遇到一头高度大于或等于它的牛,则无法继续看到这头牛后面的其他牛。给出这些牛的高度,要求每头牛可以看到的牛的数量的和。把要求作一下转换,其实就是要求每头牛被看到的次数之和。这个可以使用单调栈来解决。从左到右依次读取当前牛的高度,从栈顶开始把高度小于或等于当前牛的高度的那些元素删除,此时栈中剩下的元素的数量就是可以看见当前原创 2016-07-05 11:20:35 · 417 阅读 · 0 评论 -
NOIP2011 D1T1 铺地毯
P1692 铺地毯 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景NOIP2011 day1 第一题 描述为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 n 张地毯,编号从 1 到n 。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。地原创 2016-07-15 23:39:49 · 386 阅读 · 0 评论 -
NOIP2013 D2T1 积木大赛
[NOIP2013T4]积木大赛 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景noip2013day2描述春春幼儿园举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为n的大 厦,大厦可以看成由n块宽度为1的积木组成,第n块积木的最终高度需要是ℎi, 在搭建开始之前,没有任何积木(可以看成n块高度为 0 的积木)。接下来每次操作, 小朋友原创 2016-07-15 23:42:57 · 1902 阅读 · 0 评论 -
NOIP2011 day2 第一题 计算系数
计算系数 NOIP2011 day2 第一题 描述 给定一个多项式(ax+by)^k,请求出多项式展开后x^n*y^m项的系数。 输入格式 共一行,包含5 个整数,分别为 a ,b ,k ,n ,m,每两个整数之间用一个空格隔开。 输出格式 输出共1 行,包含一个整数,表示所求的系数,这个系数可能很大,输出对10007 取模后的结果。 测试样原创 2016-07-16 00:06:31 · 379 阅读 · 0 评论 -
POJ 2299 求逆序对个数 归并排序 Or数据结构
题意: 求逆序对个数 没有重复数字 线段树实现: 离散化。 单点修改,区间求和// by SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;long long ans=0;int n,t,f[2555555],sum[2555555],a[2555555];bo原创 2016-07-16 00:16:08 · 413 阅读 · 0 评论 -
NOIP 2012 D1T1 Vigenère密码
嗯嗯 一道找规律的题。。。。 真佩服那些把表打出来的人//By SiriusRen#include <cstdio>#include <cstring>using namespace std;char a[1005],b[1005];int main(){ scanf("%s%s",a,b); int lena=strlen(a),lenb=strlen(b)原创 2016-07-16 08:21:39 · 696 阅读 · 0 评论 -
POJ 3275 Floyd传递闭包
题意:Farmer John想按照奶牛产奶的能力给她们排序。现在已知有N头奶牛(1 ≤ N ≤ 1,000)。FJ通过比较,已经知道了M(1 ≤ M ≤ 10,000)对相对关系。每一对关系表示为“X Y”,意指X的产奶能力强于Y。现在FJ想要知道,他至少还要调查多少对关系才能完成整个排序。思路: bitset+Floyd传递闭包。// by SiriusRen#include <bitset>原创 2016-07-05 21:07:20 · 518 阅读 · 0 评论 -
POJ 2665 模拟,,
It is confirmed that these sections do not overlap with each other. 一句话 就变成水题了,,,// by SiriusRen#include <cstdio>using namespace std;int n,m,xx,yy;int main(){ while(scanf("%d%d",&n,&m)&&(n|原创 2016-07-28 14:58:33 · 768 阅读 · 0 评论 -
POJ 2346 DP or打表
这题 不算重复的数。。 就变成水题了。 思路: 1.打表 2.DP 打表的:// by SiriusRen#include <cstdio>using namespace std;int a[6]={0,10,670,55252,4816030,432457640},n;int main(){ scanf("%d",&n); printf("%d\n",a[n/2原创 2016-08-03 18:59:35 · 242 阅读 · 0 评论 -
POJ 3628 01背包 OR 状压
思路: 1.01背包 先找到所有奶牛身高和与B的差。 然后做一次01背包即可 01背包的容积和价格就是奶牛们身高。 最后差值一减输出结果就大功告成啦! 2. 搜索 这思路很明了吧。。。 搜索的确可以过… 3. 模拟! 0到1< < n 来一遍。(状压呗)01背包的:// by SiriusRen#include <cstdio>#include <algorithm>原创 2016-08-06 15:19:31 · 227 阅读 · 0 评论 -
POJ 3269 中位数
题意: 思路: 这道题坑也不少。。 你准备好脑洞了么?首先 要认真审题 题目中有说:“没有两头牛的吃草位置是相邻的” 这句话让我们省了很多的事儿 (Discuss里有的大神就入了这个坑了)然后呢 自然想到了中位数 (不要问我怎么想到的)但是如果n为偶数怎么办呢 就取两个中间位置的数那段区间呗~本以为随便搞搞 n的取值 干啥 n为奇数 找到中间点原创 2016-08-28 13:59:24 · 1239 阅读 · 0 评论 -
POJ 1094 拓扑排序
题意大坑,建议先看Discuss…… 否则代码写得就像以下的一团糟。。。。其实并不难,拓扑排序+乱搞就可以AC。// by SiriusRen#include <cstdio>#include <cstring>#include <algorithm>using namespace std;char jy[4],vis[26],in[26],temp[26],flag,VIS[26],F原创 2016-08-03 12:55:56 · 288 阅读 · 0 评论 -
POJ 3299 模拟
水题,但是WA了一屏………swap的时候忘了把读入的数字也swap了………………………..【尴尬】// by SiriusRen#include <cmath> #include <cstdio>#include <algorithm>using namespace std;char jya,jyb;double T,D,H,xx,yy,e,h;int main(){ whil原创 2016-08-07 11:20:45 · 206 阅读 · 0 评论 -
COGS 2479 奇怪的姿势卡♂过去 (bitset+折半)
思路: 此题显然是CDQ套CDQ套树套树 (然而我懒) 想用一种奇怪的姿势卡过去就出现了以下解法5w*5w/8的bitset hiahiahia 但是空间会爆怎么办啊… 折半~ 变成5w*2.5w/8完美卡过去 时间会慢很多么 并没有~~完全可以过 甚至比某些姿势不好的树套树快hiahiahia代码是不是很短~//By SiriusRen#include原创 2017-01-25 00:36:51 · 445 阅读 · 0 评论