摘要:N皇后问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 15419 Accepted Submission(s): 7009 Problem
阅读全文
摘要:#include#include#includeusing namespace std;set a;int main(){ //插入元素 a.insert(1); a.insert(3); a.insert(5); //用迭代器遍历容器; set::itera...
阅读全文
摘要:#include#include#include using namespace std;int main(){ vector vec; vec.push_back(1);//在尾部插入元素 vec.push_back(2);// cout::iterator it; ...
阅读全文
摘要:#include#include#include //按键值大小构成二叉搜索树 using namespace std;map a;int main(){ a.insert(map::value_type(1,"li")); a.insert(map::value_type(1,"LI"...
阅读全文
摘要:#include#include#include#includeusing namespace std ;#define M 500 + 10int a[M] ;int b[M] ;int c[M] ;int d[M] ;int l ;int n ;int m ;map Map ;void Mar...
阅读全文
摘要:Nested Dolls Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3512 Accepted Submission(s): 1059 Pr
阅读全文
摘要:#include#include#include#include#includeusing namespace std;vector words;bool isPrefix(string s1, string s2){ string::iterator it1=s1.begin(); s...
阅读全文
摘要:DFS代码#include#includeusing namespace std;#define Min(a,b) (aN) return INF; if(step[k]!=-1) { return step[k]; } if(k==B) { ...
阅读全文
摘要:Rescue Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 25485 Accepted Submission(s): 9022 Problem
阅读全文
摘要:#include#include#include#include#include#includeusing namespace std;const int MAX_N=105;vector words;map vis;queue que;bool dfs(int i,string word){ ...
阅读全文
摘要://有向图最小路径覆盖:从某一点出发沿着有向路径,不走回路,能将所有的结点遍历。#include#include#include#includeusing namespace std;const int MAX_N=125;int match[MAX_N];bool vis[MAX_N];set i...
阅读全文
摘要:#include #include #include #include #include using namespace std;#define N 101int match[N];bool vis[N];vector e[N];int n, m, k;void InitRead();void D...
阅读全文
摘要:0 0 Yes1 1 0 0 Yes1 2 2 1 0 0 No//自回路不算一条边的!居然有 0 0这样的测试数据#include#include#include#includeusing namespace std;set ans;set member;const int SIZE=100000...
阅读全文
摘要:#include#include#includeusing namespace std;int sign[9];void change_to_8(int x){ int index=8; while(x) { if(x&1) { s...
阅读全文
摘要:set容器中的值互异,非常好用。水题,直接贴代码了#include#include#includeusing namespace std;set ans;const int SIZE=1000+16;int par[SIZE];int rnk[SIZE];void init(int n){ f...
阅读全文
摘要:1.解法一:多重背包#include#includeusing namespace std;#define MAX(a,b) (a>b)?a:bconst int SIZE=500000+16;int dp[SIZE];int bag[7];int nLimit;void ZeroOnePack(i...
阅读全文
摘要:#include#includeusing namespace std;#define MAX(a,b) (a>b)?a:bconst int SIZE=100000+16;int nKind; //物品种类数目int nLimit; //背包容量int val[SIZE]; //每种背包的价值in...
阅读全文
摘要:#include#includeusing namespace std;#define MAX(a,b) (a>b)?a:bconst int SIZE=1000+16;int nKind; //物品种类数目int nLimit; //背包容量int val[SIZE]; //每种背包的价值int ...
阅读全文
摘要:分块查找算法#include#include#include#includeusing namespace std;const int SIZE=1300000+16;const int BLOCKS=50000; //块的大小char word[SIZE][11];char pre[20];int...
阅读全文
摘要:#include#include#include#include#include#includeusing namespace std;#define END "XXXXXX"const int SIZE=10000+16;map dic;void Fun_in(){ string s; ...
阅读全文
摘要:#include#include#include#include#includeusing namespace std;const int SIZE=10000+16;char book[SIZE];map dic;void fun_in(){ char start[6]={'\0'}; ...
阅读全文
摘要:#include#include#includeusing namespace std;const int INF=0x30303030;const int SIZE=10000+16;int w[SIZE];int v[SIZE];int dp[SIZE];int main(){ int T...
阅读全文
摘要:1.01背包for(int i=0; i=w[i]; j--) //从后向前更新 { if(dp[j]=W; j++) //从前向后更新 { if(dp[j]#include#include#includeusing namespace std;const int S...
阅读全文
摘要:练习操作字符串的好题。#include#include#includeusing namespace std;const int SIZE=5000+16;void fun_in(char s[]){ char a[SIZE]={'\0'}; while(scanf("%s",a),st...
阅读全文
摘要:每个箱子可有3种叠加方式,所以有3*n个箱子。将箱子按长度由大到小排序,有求箱子按宽度的最长下降子序列的高度之和即可。#include#include#includeusing namespace std;#define MAX(a,b) (a>b)?a:b#define MIN(a,b) (a>b...
阅读全文
摘要:#include#includeusing namespace std;const int SIZE=120000+16;int a[6];int dp[SIZE];bool check(){ for(int i=0;i=0) { ...
阅读全文