日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

不止代码:循环比赛(分治)

發(fā)布時(shí)間:2023/12/3 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 不止代码:循环比赛(分治) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

循環(huán)比賽日程表(match)

【問(wèn)題描述】

解析

dfs或分治
分治可以不斷遞歸4個(gè)小正方形
左上右下為前一半,左下右上后一半
dfs就很無(wú)腦了

代碼

#include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<iostream> #define ll long long #define mem(a,b) memset(a,b,sizeof(a)) using namespace std; const int N=1e5+100; const int M=1e6+100; int m,n; int id[1001][1001]; int jd[1001][1001]; int today[1001]; void print() {for(int i=1; i<=n; i++) {for(int j=1; j<=n; j++) {printf("%d ",id[i][j]);}printf("\n");} } void dfs(int I,int J) {if(J>n) {mem(today,0);if(I==n) print();else dfs(I+1,1);return;}if(!id[I][J]) {for(int i=1; i<=n; i++) {if(today[i]||jd[J][i]||jd[i][J]) continue;jd[J][i]=jd[i][J]=1;today[i]=today[J]=1;id[I][J]=i;id[I][i]=J;//printf("time:%d a=%d b=%d\n",I,J,i);break;}}dfs(I,J+1); } int main() {scanf("%d",&n);n=pow(2,n);dfs(1,1);return 0; } /* 1:_ 2:o 3:* 2 10 9 */

總結(jié)

以上是生活随笔為你收集整理的不止代码:循环比赛(分治)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。