phew
盏盏大人
HelloWorld.
展开
-
(最小生成树)HDU 1863 畅通工程
查看原题题意最小生成树思路Prim算法代码#include <iostream>using namespace std;int main(int argc, char *argv[]){ int m,n,num[105][105],a,b,x; while(cin>>n>>m&&n){ int visted[105]={0}; for(int i原创 2017-02-28 07:10:27 · 202 阅读 · 0 评论 -
(分治法求最近对)1007
查看原题代码#include<cmath>#include<algorithm>using namespace std;int n;struct node{ double x; double y;}p[100005];int a[100005];double cmpx(node a,node b){ return a.x<b.x;}double cmpy(int a转载 2017-03-21 20:16:15 · 341 阅读 · 0 评论 -
(DFS)ZOJ 2100 Seeding
查看原题题意思路代码#include <iostream>using namespace std;int booked[7][7],step,all,flag,n,m;char field[7][7];void dfs(int x,int y){ int next[4][2]={{0,1},{0,-1},{1,0},{-1,0}};//选定上下右左四个方向 int tempx原创 2017-03-30 20:58:39 · 216 阅读 · 0 评论 -
(更新中)内部排序
插入排序直接插入排序将每一个待排记录插到前面已排序列的适当位置#include <iostream>using namespace std;int main(){ int num[10],j; for(int i=0;i<10;i++){ num[i]=0; } for(int i=1;i<7;i++){ cin>>num[i];原创 2017-03-07 09:38:29 · 211 阅读 · 0 评论 -
(遍历二叉树)HDU 1710 Binary Tree Traversals
查看原题题意给出结点数,并给定先序遍历,中序遍历,求后序遍历思路见代码 另外注意一下typedef * ->代码#include <iostream>using namespace std;typedef struct node{ node *l,*r; int data;}*treenode;treenode create(int preorder[], int inor原创 2017-03-14 21:49:48 · 259 阅读 · 0 评论 -
(最小生成树 Kruskal)HDU 5253 连接的管道
题意最小生成树思路Kruskal代码#include <iostream>#include <stdio.h>#include <algorithm>using namespace std;const int N=1005;const int M=N*N;int num[N][N];int father[M];struct Edge{ int u,v,w;//本位,前位,两者原创 2017-03-16 09:01:12 · 315 阅读 · 0 评论 -
(哈夫曼编码)HDU 1053 Entropy
查看原题题意哈夫曼编码思路这段代码是我网上抄的……哇作者居然能想到用负值的优先队列实现哈夫曼树,真的是厉害了……反正我是没想到……代码#include<iostream>#include<map>#include<queue>#include <string>#include <string.h>using namespace std;const int maxn = 100000 +原创 2017-03-16 22:17:09 · 235 阅读 · 0 评论 -
(待更新理解)(数值过大素数计数模版)HDU 5901 Count primes
题意思路代码#include<iostream>using namespace std;long long int f[340000],g[340000],n;void init(){ long long int i,j,m; for(m=1;m*m<=n;++m){ f[m]=n/m-1; } for(i=1;i<=m;++i){原创 2017-04-22 22:21:53 · 231 阅读 · 0 评论 -
(贪心算法)HDU 2037 今年暑假不AC
查看原题题意思路活动安排问题。 先把活动按结束时间从早到晚排序,将第一个活动设为j开始走,如果后面的活动i有开始时间比j结束时间还要迟的,则活动i也可以展开,最后答案+1。 同时将活动i设为j,继续往后走,寻找新的符合要求的活动i。 循环直到最后一个活动。代码#include <iostream>#include <algorithm>using namespace std;struct原创 2017-05-30 12:56:44 · 282 阅读 · 0 评论 -
分治法在安排循环赛中的应用
#include <iostream>using namespace std;int a[1024][1024];void merger(int n){ int m=n/2; for(int i=0;i<m;i++){ for(int j=0;j<m;j++){ a[i][j+m]=a[i][j]+m; a[i+m原创 2017-03-08 21:36:27 · 449 阅读 · 0 评论 -
(最短路径 Floyd)HDU 2544 最短路
查看原题题意最短路径思路Floyd代码#include <iostream>using namespace std;int main(){ int n,m,a,b,c; while(cin>>n>>m&&m+n!=0){ int map[105][105]; for(int i=1;i<=n;i++){ for(int j=原创 2017-03-06 19:11:16 · 245 阅读 · 0 评论 -
(大数相加)HDU 1002 A + B Problem II
查看原题题意两数相加思路JAVA大数相加代码import java.math.BigInteger;import java.util.Scanner;public class Main { public static void main(String[] args) { BigInteger a, b; int T; Scanner in =原创 2017-02-25 20:52:56 · 231 阅读 · 0 评论 -
(拓扑排序)HDU 1285 确定比赛名次
查看原题题意拓扑排序思路以二维数组存储有向图,in数组记录每个点的入度,增加marked数组判断该点是否操作过代码#include <iostream>using namespace std;int main(int argc, char *argv[]){ int n,m,a,b; while(cin>>n>>m){ int marked[505]={0},n原创 2017-03-01 07:32:03 · 225 阅读 · 0 评论 -
HDU 1113 Word Amalgamation
查看原题题意给出单词集合,再给错序单词,如果集合中有则输出,无则说明思路将集合中的单词作为索引,再用sort()排好序,作为值。 乱序中的单词也用sort()排序,查找map值中是否有相等的,有就输出索引代码#include <iostream>#include <string>#include <map>#include<algorithm> using namespace std;i原创 2017-02-24 19:59:03 · 222 阅读 · 0 评论 -
(关键路径)HDU 4109 Instrction Arrangement
题意N条指令M个约束条件,每条指令之间必须有安全间隔,执行一条指令用时1s思路关键路径,类似拓扑排序中求最长路径。设定map容器、入度为0的队列、入度数组、到每一点最长的路。代码#include <iostream>#include <vector>#include <queue>using namespace std;struct edge{ int next; int c原创 2017-03-04 21:46:01 · 365 阅读 · 0 评论 -
(二叉排序树)HDU 3791 二叉搜索树
查看原题题意如题思路为每一行建立一个二叉排序树,进行对比代码#include<iostream>#include <string.h>using namespace std;int tree1[10000];int tree2[10000];void insert(char node,int tree[]){ int step=1;int nodedata=node-'0';原创 2017-03-18 14:51:29 · 215 阅读 · 0 评论 -
(平衡二叉树最少结点最大深度公式...?)HDU 2193 AVL Tree
查看原题题意输入结点数,输出平衡二叉树的最大深度,根结点不算思路a[i]=a[i-1]+a[i-2]+1; 这个公式不知道哪来的,但是真的是这么一回事,等会推推看代码#include <iostream> using namespace std; int a[46]; int n; int main() { a[0]=1;a[1]=2; for (in原创 2017-03-18 22:22:22 · 9773 阅读 · 3 评论 -
(最短路径 Dijkstra)HDU 1874 畅通工程续
查看原题题意一个顶点到其余顶点的最短路径思路Dijkstra代码#include <iostream>using namespace std;int main(){ int n,m,a,b,x,start,end; while(cin>>n>>m){ int map[205][205]; for(int i=0;i<n;i++){原创 2017-03-06 12:32:35 · 319 阅读 · 0 评论 -
(DFS)(全排列)(不用库函数)POJ 1256 Anagram
查看原题题意生成所给数串的全排列,按AaBb顺序思路代码#include #include #include using namespace std;int len,v1[15];//记录数串的第i个位置是否被访问过char result[15];//存储结果struct trans{ int transednum;//转换后的数字原创 2018-01-06 11:05:23 · 241 阅读 · 0 评论