Necklace HDU - 3091(状压dp)

【即插即用模块】注意力篇 | MICCAI 2023 | MFE:多尺度特征提取,告别固定感受野,猛涨2个点! 本文提出一种用于低分辨率乳腺癌病理图像超分辨率与分类的网络SHISRCNet。针对现有方法处理低分辨率图像效果差、感受野固定等问题,设计了多特征提取模块(MFE),通过多速率空洞卷积覆盖全尺度感受野(局部到全局),结合递进残差连接和动态权重融合机制,实现自适应多尺度特征增强。实验表明,该模块在超分辨率任务中PSNR提升近2个点,分类准确率显著提高。代码提供详细注释,支持即插即用,适用于各类多尺度视觉任务。 阅读详情

Necklace HDU - 3091

 One day , Partychen gets several beads , he wants to make these beads a necklace . But not every beads can link to each other, every bead should link to some particular bead(s). Now , Partychen wants to know how many kinds of necklace he can make. 

Input
It consists of multi-case .
Every case start with two integers N,M ( 1<=N<=18,M<=N*N )
The followed M lines contains two integers a,b ( 1<=a,b<=N ) which means the ath bead and the bth bead are able to be linked.
Output
An integer , which means the number of kinds that the necklace could be.
Sample Input

3 3
1 2
1 3
2 3

Sample Output

2
题意:

有n个珠子,每个珠子都只能和特定的一些珠子相连,问用这些珠子能构成多少不同的项链

分析:

实际上,每个珠只能和一些特定的珠子相连,我们就可以把它想象成一个图,能相连就是连通,要求每个珠子都得有,构成一个环,也就是问有多少种哈密尔顿回路
因为珠子比较少,可以使用状压dp

定义dp[s][j]表示状态s时j为最后一个珠子有多少个dp[s][j]表示状态s时j为最后一个珠子有多少个

状态转移的时候就枚举1-n个珠子i,如果这个珠子i还没用,并且和j即前一个状态下的末尾珠子相连,就可以更新,状态转移到新的状态,即现在成了以i结尾的了

最后在累加的过程中,以i为结尾的是否能和1相连,如果可以那么就构成了了满足题意的哈密尔顿回路,就加上

code:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 1 << 20;
ll dp[maxn][20];//dp[s][j]表示状态s下以j为结尾的个数
int dis[20][20];

int main(){
    int n,m;
    while(scanf("%d%d",&n,&m) != EOF){
        memset(dis,0,sizeof(dis));
        while(m--){
            int a,b;
            scanf("%d%d",&a,&b);
            dis[a][b] = dis[b][a] = 1;//相当于存图,代表ab间有连边
        }
        memset(dp,0,sizeof(dp));
        dp[1][1] = 1;
        for(int s = 1; s < (1 << n); s++){
            for(int j = 1; j <= n; j++){//枚举要更新的dp,更新s状态下j结尾的dp的值
                if(!dp[s][j]) continue;//如果为0,说明这种状态不存在
                for(int i = 1; i <= n; i++){//在结尾加上新的石头i,即现在要以i为结尾
                    if(s & (1 << (i-1))) continue;//如果这个石头在原状态已经有了,跳过
                    if(!dis[i][j]) continue;//如果ij不相连,跳过
                    dp[s|(1 << (i-1))][i] += dp[s][j];
                }
            }
        }
        ll ans = 0;
        int S = (1 << n) - 1;
        for(int i = 1; i <= n; i++){
            if(dis[i][1]){//说明首尾能够相连
                ans += dp[S][i];
            }
        }
        printf("%lld\n",ans);
    }
    return 0;
}
保姆级教程:一步步创建 ABAP Text Table 有朋友反馈,问有没有一个自己动手创建 Text Table 的例子,因为自己没有动手实践过,总觉得心里不踏实。这个行为的语义是,ZAI_TYPE_T 这张表的 AI_TYPE 字段值,不能随便维护,必须是表。然后另一个需要添加的字段是 AI_TYPE 这个字段值对应的文本值,本例笔者采用 SAP 标准的。也是自己创建的,很简单的一个 Data Element,类型为 CHAR,长度为 2.依次给主表的 01,02,03 三个字段值维护对应的描述信息,最后效果如下。按照下面的字段结构,创建另一。 阅读详情

相关推荐

UE5摄像机抖动全攻略:从Perlin噪点到Sequence实战(附参数调优技巧)

本文深入解析UE5摄像机抖动技术,从Perlin噪点算法到CameraShakeBase蓝图应用,再到Sequence高级控制,提供全面的参数调优技巧。涵盖战斗、爆炸等场景的预设参数,帮助开发者实现专业级抖动效果,提升游戏沉浸感。

weixin_30300225的博客 95

hdu3091 Necklace

Necklace Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 327680/327680 K (Java/Others) Total Submission(s): 379    Accepted Submission(s): 120 Problem Description One day , Partych

喵呜的Blog 1253

解密电商大促背后的智慧:LSTM与ARIMA模型的双剑合璧

举个例子,如果某东发现某款新推出的电子产品在促销前夕搜索量突然暴涨,虽然这个产品没有过去的销售记录,但LSTM模型可以结合用户对类似产品的行为模式、实时的市场反馈,迅速捕捉到这些变化,并预测这款产品在大促期间的需求会急剧上升。想象一下,如果预测不准确,备货不足,商品很快就卖光了,大量用户可能在促销期间买不到想要的商品,这不仅让用户失望,还会影响某东的品牌形象。这种情况就像我们看一部很长的电视剧,看得越久,前面的情节可能就越来越模糊,到最后有些关键的情节细节都忘了,影响了对整个剧情的理解。

小蒋聊技术 2090

O - Necklace (状态dp)

One day , Partychen gets several beads , he wants to make these beads a necklace . But not every beads can link to each other, every bead should link to some particular bead(s). Now , Partychen wants

sdau20163940的博客 297

企业微信微盘API权限避坑指南:为什么你的Python脚本无法获取文件列表?

本文深入解析了企业微信微盘API的权限模型,解释了为何即使使用超级管理员账号,Python脚本也可能因权限不足而无法获取文件列表。核心在于微盘API基于“应用身份”而非“用户身份”进行校验,应用只能访问自身创建的空间。文章提供了构建文件上传代理、利用事件回调等合规的替代方案,帮助企业实现高效数据同步。

weixin_29322553的博客 529

CloudCompare 和 PCL:点云网格化分析与处理

点云网格化是将点云数据转化为规则网格的过程,其主要思想是将离散的点云投影到一个平面上,然后对该平面进行划分,形成一系列小区域。在点云网格化方面,PCL 提供了各种算法和工具,可以实现高效的点云网格化操作。以上示例代码中,首先加载了输入的点云数据,然后通过设置合适的网格化算法参数,如搜索半径和最大三角形边长等,执行了网格化操作,最后将网格化结果保存到输出文件中。以上示例代码中,首先加载了输入的点云数据,然后通过设置合适的网格化参数,如分辨率等,执行了网格化操作,最后将网格化结果保存到输出文件中。

TechPulseZ的博客 1290

poj1286 Necklace of Beads

题目描述: 用三种颜色给一条长为$n$的项链染色,要求染色方案不同。 两种方案不同即旋转或翻转后不相同。 题解: 这道题用到$Burnside$引理的升级版$Polya$定理。 $Polya$定理:一种轨道的不动点数=颜色数^组数。 代码: #include<cstdio> typedef long long ll; int n; ll bas[25]...

a6t2007的博客 162

UniRx之基本语法格式

想要更好的去学习UniRx,我们最好是先理解UniRx 的语法格式。就像我们去学习英语或者汉语一样,理解了基本的语法规则后,再学其他的就信手拈来了。

TxNet 924

Necklace(HDU-3091)

Problem Description One day , Partychen gets several beads , he wants to make these beads a necklace . But not every beads can link to each other, every bead should link to some particular bead(s). ...

Alex_McAvoy的博客 367

YOLOv8改进策略【注意力机制篇】| CVPRW-2024 分层互补注意力混合层 H-RAMi 针对低质量图像的特征提取模块

许多证据表明层次化网络对图像恢复(IR)任务通常不太有效,因为IR的目标是逐个预测像素值(密集预测),而缩小特征图会丢失重要的像素级信息。然而,层次化结构有降低时间复杂度以及学习语义级和像素级特征表示的优点。为了弥补缺点并利用优点,设计了H - RAMi层。

Limiiiing的博客 377

23、OpenMP常见用例与标准循环级示例详解

本文详细介绍了OpenMP的三种典型用例:循环级OpenMP、高级OpenMP和MPI+OpenMP,适用于不同层次的并行需求。重点讲解了循环级OpenMP在向量加法、流三元组和模板计算中的应用示例,并探讨了首次触摸优化、线程绑定、NUMA架构影响等关键性能优化策略。通过实际代码演示和性能分析,帮助开发者快速掌握OpenMP的基础并行化方法,并为后续高性能优化提供指导。

fanta的博客 85

Tsinsen1295 necklace

动态规划

AaronPolaris 3449

【NI Multisim 14.0原理图设计基础——元器件分类】

电阻(RESISTOR):该元器件栏中的电阻都是标称电阻,是根据真实电阻元器件而设计的,其电阻值不能改变。 排阻(RESISTOR PACK):相当于多个电阻并列封装在一个壳内,它们具有相同的阻值。 电位器(POTENTIOMETER):即可调电阻,可以通过键盘字母动态调节电阻,大写表示增加电阻值,小写表示减小电阻值,调节增量可以设置。 电容(CAPACITOR):所有电容都是无极性的,不能改变参数,没有考虑误差,也未考虑耐压大小。 电解电容器(CAP_ELECTROLIT):所有电容都是有极性的,“+”极

RL2698853114的博客 4万+

Necklace HDU-3091(状压DP)

Necklace HDU-3091 点击跳转↑ 题设:多组输入,每个样例输入n(珠子的总数),m(可连接的珠子对的总数)( 1<=n<=18,m<=n*n )。接下来输入m行,每行两个数a和b ( 1<=a,b<=n ),代表编号为a和b珠子是可连接的。 问:在m条可连接关系下将这n个珠子串成项链,共有多少种结果。 思路:这是有限制条件的问题求解,易发现可使用状压dp。 1、定义dp【i】【j】代表将编号为i的珠子串起来,此时的状态为j(j的二进制下有n位,0代表未使用,1代

自伤无色的博客 195

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

HDU 3091 Necklace <<状压dp

题意 要把一些珠子串成一串,每个珠子只可以和限制特定的别的珠子串在一起,给定珠子数量和限制条件,求能组成的不同的项链的种数。 思路 看数据范围,再加上这是有限制条件的问题求解,很容易发现是状压dp的问题。dp[i][j]表示放下第i个珠子后的状态为j(即i为前一个珠子),只要保证下一个珠子能和前一个接的上就可行。那么枚举k为下一个珠子,看是否可行即可,具体看代码。然后细节上,点的下标与dp中...

weixin_30764883的博客 154

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

HDU 3091 Necklace

题目:http://acm.hdu.edu.cn/showproblem.php?pid=3091 题意:给你一些珠子,某些珠子之间可以互相连接,问可以连成多少种不同的项链 我们只需要从任意一个点出发,最后再回到这个点就能保证不会重复 #include<iostream> #include<cstdio> #include<cstring...

dengyaodan0206的博客 116

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

HDU3091 Necklace 【状压】

题意:有许多珠子,能和别的相邻,求哈密顿回路的方案数 思路:n不大,考虑状压DP,dp[s][i],表示到s状态时,i在最后一个。从任意一个点开始,递推到s包含所有点,最后答案累加时,判断结尾和你选定的起点是否相连 #include #include #include #include #include #include #include #include #include #

狂奔的蜗牛 357

HDU 3091 Necklace (状态压缩dp)

#include #include #include #include #include #include #include #include #include using namespace std; const int N = (1<<18) + 10; const double eps = 1e-10; typedef long long ll; ll dp[N][20]; int Map[

dml_96的博客 629

hdu 3091 Necklace 状态压缩dp *******

Necklace Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 327680/327680 K (Java/Others)Total Submission(s): 522Accepted Submission(s): 168 Problem Description One day , Partychen gets se...

weixin_33908217的博客 110

hdu 3091 Necklace(状态压缩类似于TSP问题)

Necklace Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 327680/327680 K (Java/Others)Total Submission(s): 709Accepted Submission(s): 245 Problem Description One day , Partychen gets se...

weixin_33795833的博客 156

O - Necklace

One day , Partychen gets several beads , he wants to make these beads a necklace . But not every beads can link to each other, every bead should link to some particular bead(s). Now , Partychen wants

konghhhhh的博客 341

HDU 5727 Necklace(玄学+状压DP 或 匈牙利)

[题目链接][题意] 2n颗宝石,n颗为阴,n颗为阳,阴阳交错的组成一个圈(圆排列) 给定一系列阴阳宝石对,如果在排列中这两颗宝石相邻,阳宝石就会失去能量 求如何排列能让最少的阳宝石失去能量,输出最少的宝石数目[分析] n比较小(n<=9n <= 9),自然想到状压 但如果交错的枚举阴阳宝石,状态不好表示,也不好转移 于是想到先固定阴宝石的排列,再状压dp求阳宝石的最优放法 朴素做法

MikeZHW的博客 665

hdu3091之状态压缩dp

Necklace Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 327680/327680 K (Java/Others) Total Submission(s): 542    Accepted Submission(s): 173 Problem Description One day , Partych

Stephen 1481

ZOJ 3471 状态DP

有 N 种 atom,每种 atom 与不同于自身的 atom 碰撞会产生一定能量,且有一方消失, atom 自身不能和自身碰撞,有一个矩阵表示他们之间碰撞所产生的能量, A[i][j] = x 代表 i 和 j 碰撞,产生 x能量且 j 消失,问能做多产生多少能量? #include #include using namespace std; int arr[11][11];

一刀不二 772

USACO 1.1 Broken Necklace (beads)

/* ID: haolink1 PROG: beads LANG: C++ */ //#include #include #include using namespace std; int main(){ ifstream fin ("beads.in"); unsigned int num; fin >> num; string beads; fi

Hello World! 1182

Necklace (状态dp)

One day , Partychen gets several beads , he wants to make these beads a necklace . But not every beads can link to each other, every bead should link to some particular bead(s). Now , Partychen wants

a1046765624的博客 493
上一篇: ICPC2018南京网络赛 AC Challenge(一维状压dp)
下一篇: ACM-ICPC 2018 南京赛区网络预赛 B The writing on the wall(暴力)
Guuuuuu老师儿
博客等级 码龄9年 259粉丝 718原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值