Examining the Rooms

2024-04-02 17:08
文章标签 rooms examining

本文主要是介绍Examining the Rooms,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这道题是斯特林第一类数的应用,好吧,这是先前的大牛们告诉我的。
算是很裸的应用,
斯特林第一类数的第推公式:


S(N,0)= 0;


S(N,N)= 1;


S(0,0)= 0;


S(N,K)= S(N-1,K-1)+ S(N-1,K)*(N-1);
在这道题中,S(N,0)=0,指N个人分为0个环,而S(N,N)表示N个人分为N个环,其实这里的环的意思就是N个人分为k个环,而每个环中只要打开第一间房间其他房间就都能够打开(既除了单独成环外,每个间房中的钥匙都不是自己的,而且其中任何房间中钥匙所能开的另一个房间中的钥匙不能开这间房),所以当N-1人构成K-1个环则,剩下那个人单独成环,而当N-1人构成K个环时,第N个人可以和任何环中的任何房间交换钥匙,这样就有N-1中情况了;
因为不能破话第1个门,所以S[N,k]-s[N-1,k-1],既1单独成环的情况。
代码
#include<stdio.h>
__int64 a[30][30];
void f1()
{ int i,k,j;
  for(i=0;i<21;i++)
  {   a[i][0]=0;
      if(i)
a[i][i]=1;
  }
  for(i=1;i<21;i++)
 for(k=1;k<i;k++)
 a[i][k]=a[i-1][k-1]+a[i-1][k]*(i-1);
}
int main()

这篇关于Examining the Rooms的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/870561

相关文章

Hdu 3625 Examining the Rooms[第一类斯特林数]

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3625 题目意思: n(n <= 20)个房间。n把钥匙。每个房间有一把钥匙。一把钥匙只能开一把锁。 现在一个人手里没有钥匙,他可以强行打开一个门,然后拿出这个房间内的钥匙。不能够强行打开第一个门。。。 问最多强行打开k(k <= n)个房间的门的情况下,可以全部打开所有门的概率。。 分析

leetcode 841. Keys and Rooms

题目意思是给了一个二维数组,比如[[1],[2],[3],[]] 数组[0]代表房间0里放的某个房间i的钥匙,比如房间0里放的房间1的钥匙。然后通过房间0里的钥匙去打开房间1,然后继续去拿钥匙。 该问题和密室逃脱一样或者以前的RPG单机游戏仙剑一样,打通某个任务才能解锁另外一个任务。 求能不能访问所有的房间。 读完题目第一个想法就是这个题目和图的遍历很想哦。 房间0相当于图的顶点ve

A and B and Lecture Rooms CodeForces - 519E(LCA倍增,思维)

题目大意 给定一棵树,然后q个询问,距离两个点距离相等点的个数。 思路 先用LCA求出两个点的最近公共祖先,然后判断距离,如果说两个点距离lca的距离和为奇数那么不存在距离相等的点,如果说距离为偶数,那么又可以分出两种情况,第一种情况是距离相等那么就是所有的点数量去掉包lca包含a,b子树的节点数。距离不相等,那么就是中点位置的子树节点数减去其包含深度大的那个结点子树。 代码 #incl

论文阅读-Examining Zero-Shot Vulnerability Repair with Large Language Models

1.本文主旨: 这篇论文探讨了使用大型语言模型(LLM)进行零射击漏洞修复的方法。人类开发人员编写的代码可能存在网络安全漏洞,新兴的智能代码补全工具是否能帮助修复这些漏洞呢?在本文中,作者研究了大型语言模型(如 OpenAI 的 Codex 和 AI21 的 Jurassic J-1)在零射击漏洞修复中的使用。他们研究了如何设计提示来引导 LLM 生成不安全代码的修复版本,这由于自然语言在语义和

Leetcode 253. Meeting Rooms II [Python]

扫描线,遇到start,和end记录其时间点,并以True和False配对,随后sort。再次扫描,设置count记录需要的会议室数量,遇到start的True后+1,end的False则相应-1.每次更新count后对于全局res。保留最大的temp作为res。 class Solution:def minMeetingRooms(self, intervals: List[List[int]

Leetcode 253. Meeting Rooms II [Python]

扫描线,遇到start,和end记录其时间点,并以True和False配对,随后sort。再次扫描,设置count记录需要的会议室数量,遇到start的True后+1,end的False则相应-1.每次更新count后对于全局res。保留最大的temp作为res。 class Solution:def minMeetingRooms(self, intervals: List[List[int]

LeetCode841. Keys and Rooms

文章目录 一、题目二、题解 一、题目 There are n rooms labeled from 0 to n - 1 and all the rooms are locked except for room 0. Your goal is to visit all the rooms. However, you cannot enter a locked room with