摘要:
1137做过一样的 怎么又忘了 再一次搜超时不用回溯 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 #define N 1001010 int n,m;11 vectored[N];12 bool vis[N][N];13 int pa[100010],t;14 void dfs(int u)15 {16 int i;17 for(i = 0 ; i 1 ; i--)48 printf("%d ",pa[i])... 阅读全文
摘要:
1934水题 RE了N久 后来发现是无向图 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 #define N 2000010 10 #define INF 0xfffffff 11 struct node 12 { 13 int u,v,next; 14 double w; 15 }ed[Nq; 42 dis[s] = 1; 43 p[s] = 1; 44 q.push(s);... 阅读全文
摘要:
A 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 int a[110]; 9 int main()10 {11 int i,j,n,u,v;12 int s1=0,s2=0,num=0;13 scanf("%d",&n);14 for(i = 1; i 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define... 阅读全文
摘要:
1124需要想那么一点点吧 一个连通块中肯定不需要伸进手不拿的情况 不是一个肯定会需要这种情况 然后注意一点 sum=0的时候 就输出0就可以了 不要再减一了 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 vectored[510]; 9 int a[510][55],vis[510],de[510];10 void dfs(int u)11 {12 int i;13 for(i = 0 ; i < (int)ed[u].size() ; i... 阅读全文
摘要:
1742最小的是找联通块数 最大的找环 一个环算一个 其它的数各算一个 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define N 100010 9 int fa[N],vis[N];10 int minz,maxz,de[N],f[N],pp[N];11 void dfs(int u,int v)12 {13 de[u] = v;14 vis[u] = 1;15 f[v] = u;16 int i;17 if(... 阅读全文
摘要:
这题纠结好久了 看一神代码 想了N久才明白它的意思dp[i][j]表示放了i个数后和为J的方式有多少种而在算阶层总数的时候 会重一部分 而重的那一部分恰好为小于等于P的长度 所以就直接省了乘长度这一部分 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define LL long long 9 int a[55];10 LL dp[55][55];11 double pp[55];12 int main()13 {14 int i,j,k,n,p;1... 阅读全文
摘要:
这图最多3色就可以 搜2就行了 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 int vis[55][55],c[55][55],f[10],mm;10 int dis[6][2] = {{1,0},{0,1},{-1,0},{0,-1},{-1,1},{1,-1}},n;11 int flag,m;12 int judge(int x,int y)13 {14 if(x=n||y>=n)15 return 0;16 ... 阅读全文
摘要:
1008没营养的破题 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 typedef struct node 9 { 10 int x,y; 11 }st; 12 int vis[15][15],w[15][15]; 13 int n,o[115],dis[4][2] = {{1,0},{0,1},{-1,0},{0,-1}}; 14 int s[115][8],gg; 15 char ss[115][8]; 16 st p[115]... 阅读全文
摘要:
1109二分图的模板题 不过这题题意 我纠结了好久 不知道是不是我对二分图不熟悉的原因这题就是说 有n+m个人参加会议 要在这n+m中进行通话 求最少的连接数 就是每个人都得被连接上 这样求最大匹配就是了 再用总结点数减匹配的 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 vectored[2010]; 9 int n,m,k,vis[2010],link[2010];10 int find(int u)11 {12 int i;13 for... 阅读全文
摘要:
1205简单题 有一些小细节 两个站可能不相连 但是可以走过去 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std; 10 #define INF 0xfffffff 11 vectored[310]; 12 double v1,v2,x[310],y[310],w[210][210],dis[210]; 13 int n,vis[210],pa[210],o[210]; 14 void spfa(int s... 阅读全文