bzoj3033

欧拉路,这题好神啊QAQ

显然选择的方案数有2^n种,因为每个点度数都为二所以肯定是一条欧拉路,

第二问直接爆搜即可...

————然而我并没有想到————

第一问我推出来了(别问我怎么推的,我说我是蒙的好么...)

然而第二问,我想的是先枚举2^n种01串

然后显然最前面n位是0000...,最后n位是1111....

之后将所有0000,1000,1100,1110,1111....全部加访问标记

然后从0000开始往后拼,找与当前串错一位中间n-1位全部相同的未访问的串中字典序最小的那个(其实只有两个QwQ~)

然后随便乱搞......

额好像这就是正解了,然而我并不知道这是欧拉路...果然我还是太弱了TAT……

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
using namespace std;
const int Mx=1<<12;
int m,tot,ans[Mx];
bool vis[Mx];
bool find(int x,int num)
{
    if(vis[x]) return false;
    vis[x]=1; ans[num]=x>>(m-1);
    if(num==tot) return true;
    if(find((x<<1)&(tot-1),num+1)) return true;
    if(find((x<<1|1)&(tot-1),num+1)) return true;
    vis[x]=0; return false;
}
int main()
{
    scanf("%d",&m); tot=1<<m; printf("%d ",tot);
    find(0,1);
    for(int i=1;i<=tot;i++) printf("%d",ans[i]);
    return 0;
}
时间: 2024-11-03 21:07:29

bzoj3033的相关文章

[BZOJ3033]太鼓达人|欧拉图

Description 七夕祭上,Vani牵着cl的手,在明亮的灯光和欢乐的气氛中愉快地穿行.这时,在前面忽然出现了一台太鼓达人机台,而在机台前坐着的是刚刚被精英队伍成员XLk.Poet_shy和lydrainbowcat拯救出来的的applepi.看到两人对太鼓达人产生了兴趣,applepi果断闪人,于是cl拿起鼓棒准备挑战.然而即使是在普通难度下,cl的路人本性也充分地暴露了出来.一曲终了,不但没有过关,就连鼓都不灵了.Vani十分过意不去,决定帮助工作人员修鼓. 鼓的主要元件是M个围成一圈

bzoj3033: 太鼓达人 欧拉路径

题目链接 bzoj3033: 太鼓达人 题解 对于k-1位点,k位二进制位边,将点的转移连起来 每个点的入度和出度相等并且全部是偶点 只需要在这个图中找字典序最小的欧拉回路 可以贪心地找字典序较小的边,然后实在不行了就回溯 代码 #include<cstdio> #include<cstring> #include<algorithm> #define rep(p,x,k) for(int p = x;p <= k;++ p) #define per(p,x,k)

【BZOJ-3033】太鼓达人 欧拉图 + 暴搜

3033: 太鼓达人 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 204  Solved: 154[Submit][Status][Discuss] Description 七夕祭上,Vani牵着cl的手,在明亮的灯光和欢乐的气氛中愉快地穿行.这时,在前面忽然出现了一台太鼓达人机台,而在机台前坐着的是刚刚被精英队伍成员XLk.Poet_shy和lydrainbowcat拯救出来的的applepi.看到两人对太鼓达人产生了兴趣,applepi果断闪

bzoj3033 太鼓达人——欧拉图搜索

题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3033 考虑那 (1<<k) 个数,要形成答案,必然是相邻两个数间有 k-1 个重叠位置,也就是两个有 k-1 位前后对应相同的数之间可以连边转移: 发现这张图里每个点一定有两个入度.两个出度,也就是形成一张欧拉图: 所以暴搜时间有保证,暴搜即可: 对欧拉图还是太不熟悉了...暴搜也写不出来了...有种无力感... 代码如下: #include<iostream> #inclu

大神刷题表

9月27日 后缀数组:[wikioi3160]最长公共子串 dp:NOIP2001统计单词个数 后缀自动机:[spoj1812]Longest Common Substring II [wikioi3160]最长公共子串 [spoj7258]Lexicographical Substring Search 扫描线+set:[poj2932]Coneology 扫描线+set+树上删边游戏:[FJOI2013]圆形游戏 结论:[bzoj3706][FJ2014集训]反色刷 最小环:[poj1734

[转载]hzwer的bzoj题单

counter: 664BZOJ1601 BZOJ1003 BZOJ1002 BZOJ1192 BZOJ1303 BZOJ1270 BZOJ3039 BZOJ1191 BZOJ1059 BZOJ1202 BZOJ1051 BZOJ1001 BZOJ1588 BZOJ1208 BZOJ1491 BZOJ1084 BZOJ1295 BZOJ3109 BZOJ1085 BZOJ1041 BZOJ1087 BZOJ3038 BZOJ1821 BZOJ1076 BZOJ2321 BZOJ1934 BZOJ