- 博客(44)
- 资源 (5)
- 收藏
- 关注
原创 UVA129
格式控制,没看到,开始wrong了#include#includeusing namespace std;int n,L;int cnt=0;int S[90];int dfs(int cur){ if(cnt++ == n){ int haha=0; for(int i=0;i<cur;i++) { if(i%4==0&&i!=0){
2015-07-31 09:24:46 710
原创 uva208递归枚举
#include#includeint n;int sett[31];int find2(int x){ return sett[x] = (x==sett[x])?x:find2(sett[x]);}int mapp[25][25];int B[25];bool used[25];int degree=0;void print(int cur,int *B,boo
2015-07-31 09:12:37 689
原创 uva129
#include#includeusing namespace std;int n,L;int cnt=0;int S[80];int flag=0;int dfs(int cur){ if(cnt++ == n){ for(int i=0;i<cur;i++) { if(i%4==0&&i!=0) printf(" ");printf("%c",S[i]+'
2015-07-30 20:16:08 613
原创 八皇后 回溯法
#includeusing namespace std;int C[20];bool vis[3][40];int tot=0;int n=4;void search2(int cur){ if(cur == n ) tot++; else for(int i=0;i<n;i++){ if(!vis[0][i]&&!vis[1][cur+i]&
2015-07-30 16:02:01 516
原创 素数表
#includeint primes[10000];void makePrimes(int n){ primes[0]=2; primes[1]=3; int cnt=2; for(int i=5;cnt<=n;i+=2) { int flag=true; for(int j=1;primes[j]*primes[j]<
2015-07-30 15:30:30 540
原创 UVA524
素数生成和生成测试法和回溯法/*生成测试法会超时*/#include#include#includeusing namespace std;int n;bool isp[50];int A[20];bool is_prime(int n){ if(n==2) return false; if(n%2==0) return false; for(in
2015-07-30 15:25:36 653
原创 二进制法构造子集
#includevoid print_subset(int n,int s){ for(int i=0;i<n;i++) if(s&(1<<i)) printf("%d ",i); printf("\n");}int main(){ int n=3; for(int i=0;i<(1<<n);i++) print_subs
2015-07-30 10:51:27 825
原创 增值构造法子集生成
#includevoid print_subset(int n,int * A,int cur){ for(int i=0;i<cur;i++) printf("%d ",A[i]); printf("\n"); int s = cur ? A[cur-1]+1 : 0; for(int i=s;i<n;i++){ A[cur]=i;
2015-07-30 10:37:05 657
原创 位向量法构造子集
/*子集生成位向量法*/#includeint B[20];void print_subset(int n,int *B,int cur){ if(cur == n) { for(int i=0;i<cur;i++) if(B[i]) printf("%d ",i); printf("\n"); return ; }
2015-07-30 09:12:26 1013
原创 hdu1162
#include#include#include#include#define INF 1000000000using namespace std;struct p{ double x,y;}spot[110];double cost[110][110];double mincost[110];bool used[110];int n;double prim()
2015-07-30 09:03:38 570
原创 hdu1863
#include#includeusing namespace std;int N,M;struct edge { int u,v,cost; bool operator < (const edge& rhs) const { return cost < rhs.cost; }};edge es[110];int sett[110];int
2015-07-30 08:48:07 757
原创 hdu1863
没有理由不对呀#include#include#includeusing namespace std;int cost[110][110];int mincost[110];bool used[110];int sett[110];int M;int prim(){ for(int i=0;i<=M;i++) { mincost[i]=214748364
2015-07-29 17:28:18 641
原创 prim最小生成树算法题poj2485
开始想用kruskal算法自己写写runtime error#include#include#includeusing namespace std;int a[2510][25100];struct weight{ int a,b; int value; bool operator < (const weight & rhs) const {
2015-07-28 20:28:12 471
原创 最小生成树hdu1233
这个题今天一写就搞对了我只能说以后一定要少看题解要自己深入的去想只要是把思路想明白了代码还是容易敲出来的此题就是最小生成树按照先练权值最小的边的算法当然他们不会都在一个集合内那就用一下并查集把连好的两个点并到一个集合里最后他们应该就都属于一个集合了#include#include#includeusing namespace s
2015-07-28 10:07:45 760
原创 并查集压缩hdu2818
#include#includeusing namespace std;int root[30010];int num1[30010];int num2[30010];int find2(int x){ if(x != root[x]) { int fx = root[x]; root[x] = find2(fx);
2015-07-27 14:53:39 845
原创 基本组成
冯诺依曼计算机特点1.5大部件组成2,指令和数据以同等地位存储于可按地址寻访3.指令和数据用2进制表示4.指令由操作码地址码组成5存储程序(核心)6.以运算器为中心
2015-07-26 21:03:23 394
原创 并查集应用食物链poj1182
由于N,K大需要高效的维护动物之间的关系快速判断是否产生矛盾对于每只动物创建3个元素i-A,i-B,i-C,并用这3*N个元素建立并查集!!!!!并查集里的每一个组表示组内所有元素代表的情况都同时发生或不发生!!!!!第一种,x和y属于同一种类,合并x-A和y-A,x-B,y-B,x-C和y-C第二种,x吃y。。。。。。。。。合并x-a和y-b,
2015-07-26 16:19:16 447
原创 并查集模板
#include#includeusing namespace std;#define MAX_N 100int par[MAX_N];int rankk[MAX_N];void init(int n){ for(int i=0;i<n;i++) { par[i]=i; rankk[i]=0; }}int find(int
2015-07-26 14:25:11 425
原创 zoj博弈月赛
Help BobTime Limit: 2 Seconds Memory Limit: 65536 KBThere is a game very popular in ZJU at present, Bob didn't meant to participate in it. But he decided to join it after discovering a lo
2015-07-26 13:53:25 754
原创 并查集应用hdu1198
就是给并查集换了个形式判断是否能连接那我写的比较麻烦可以用四个字符表示四个方向01开关判断的时候只需要判断两个方向一开始感觉无从想法一步步顺着想有些还是会变简答的#include#includeusing namespace std;char a[51][51];int sett[2500 + 50];int find2(int x){ wh
2015-07-26 11:01:23 553
原创 并查集树数据结构hdu1325
我的解法就是去构造了一棵树以数组的存储方式数组的值存放节点的根!排除空树剩下的就是出现环和多根节点的情况也就是排除森林和有一个节点多个入度的情况排除森林就用到了并查集也就是便利数组让其只有一个根排除多个入度的情况更简单就是把这个点插入到数上时如果这个点已经有了根节点,就出现了两个入度#include#include#inclu
2015-07-26 10:00:22 642
原创 并查集图冲突hdu1272
还是属于并查集的变形两个点只有一条路径连通给出的两个点事先都是属于两个集合的需要给出的着条边构成一个集合算法复杂度还是挺高的每个我都循环了100000次set2数组没清空 wrong了一次#include#include#includeusing namespace std;int sett[100000 + 100];int set2[100000 + 10
2015-07-26 08:15:24 599
原创 并查集hdu1232
应该是最基本的题开始还是没有理解透彻没有理解透彻就不要急着做题并查集说白了就是把所有的点看看能归成几个集 合所以首先判断这两点是否在一个集合范围内如果没在一个集合范围内就把小的集合赋给大的集合记住是把小的集合赋给大的集合把小的集合赋给大的集合把小的集合赋给大的集合把小的集合赋给大的集合3遍至于为什么改成大于也对。。。#includ
2015-07-26 08:11:59 545
原创 sdut2852 小鑫去爬山9dp入门)
#includeint a[100][100];int main(){ int n; while(scanf("%d",&n)!=EOF) { for(int i=1;i<=n;i++) for(int j=1;j<=i;j++) scanf("%d",&a[i][j]); for(in
2015-07-12 15:12:27 845
原创 练声
模仿外国人发声1.不挤压很放松2很厚端位置很深3还有共鸣打哈欠不要漏气,胸口要有气压headvoice真声上不去假声下不来1,自然过渡2.嘴唇布鲁3鼻咽音N喵neinai高音卷舌水滴开s嗯。。。唇颤音断音啊卷舌音从低到高
2015-07-12 14:59:07 549
原创 sdut1299 最长上升子序列(dp入门)
#include#includeusing namespace std;int a[1000];int dp[1000];int main(){ int n; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); int maxx=0; for(int i=1;i<=n;
2015-07-12 11:10:03 933
原创 sdut1730 数字三角形问题(dp入门题)
#includeint a[100][100];int main(){ int n; scanf("%d",&n); for(int i=1;i<=n;i++) for(int j=1;j<=i;j++) scanf("%d",&a[i][j]); int maxx =0; for(int i=2;i<=n;i
2015-07-12 11:01:07 823
原创 第二种并查集
#include#includeusing namespace std;int Set[1000];void merge2(int a,int b){ if(a<b) Set[b]=a; else Set[a]=b;}int find2(int x){ int r=x; while(Set[r]!=r) r=Set[r]; return r;
2015-07-11 12:02:36 592
原创 第一种并查集
/**4 21 34 30 1 2 3 40 1 2 1 3*/#include#include#includeusing namespace std;int Set[1010];int M,N;void Mergel(int a,int b){ int i=min(a,b); int j=max(a,b); for(int k=1;k<=N;k+
2015-07-11 10:59:21 577
原创 7.11
练ACM首先就是要有信心,大牛太多了,他们练的时间又那么长,开始当然会很菜,不知道怎么练,我现在也是感觉自己不知道怎么练,是看书,是刷题能看题解吗净是些很纠结的问题老师思考一些这样的问题肯定很浪费精力和时间最好有个大牛带你带着你怎么练可是没有啊那你就自己练就行了什么看书呀,刷题呀看题解啊,不看题解自己闷啊全干,我觉着干一段时间,就
2015-07-11 09:47:05 471
原创 hdu2851 (dp)
/**it has N horizontal roads, the ladders always stay at right side vertically, 开始有n条水平的马路,梯子总垂直的放在右边and the ladders are extending towards up and down with unlimited length. If ladder near or cr
2015-07-06 16:17:10 424
原创 dp求顺序hdu1160
题意是只求一次的顺序,先按照速度从大到小排序,速度想等到按体重增序排列。然后基本就变成了求已定顺序序列的最长递增序列递增,跟那个求一致最大序列和的基本一致。dp【i】里存储的是到当前i最大的递增序列个数最大的数。dp[i+1]就是在a【i+1】大于前面的a【j】的情况下,dp【i+1】=dp【j】+1;输出的就是从最大的dp【】值从后往前输出,所以用了个栈改成从前往后。以为题意
2015-07-06 15:15:21 735
原创 飞机大战笔记
一、建立滚动场景和主战机动画;两个脚本;场景动画:using UnityEngine;using System.Collections;public class BackgroundTransform : MonoBehaviour { public float moveSpeed = 2f; // Update is called once per fra
2015-07-05 19:30:42 811
原创 u3d入门
Scene与场景漫游F:获得焦点或双击按住alt:360旋转Align ViewtoSelected:讲镜头与点保持一致Hierarchy与场景搭建基本组件:Camera:主次:depth深度优先级ClearFlags 背景模式 Background背景颜色CullingMask 能看到的层Projection投影模式FieldofView视野范围Clippin
2015-07-05 13:11:21 1260
原创 单行dp复习hdu1087
我写的想法是每一个dp【i】都是前dp【i】的最大值dp【i】就等于前所有dp【0。。。i-1】的最大值加上dp【i】最大值是一个中间变量最大值得选取条件就是序列的值大小都是递增的,也就是a[i]>a[前面的]#include#include#includeusing namespace std;typedef long long LL;LL a[1000+100];L
2015-07-05 13:04:06 653
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人