2026/6/20 9:56:33
网站建设
项目流程
取名字网站如何做,上海中高风险地区,电脑版浏览器入口,手机娱乐网站制作2147: 分割长廊的方案数在示例 1 中#xff0c;我们可以在第 2 个座位和第 3 个座位之间的任意空隙放置一个屏风#xff0c;空隙个数为两个座位的下标之差 4−13。如果座位更多#xff0c;例如 corridorSSPPSSPPPSS#xff0c;我们可以#xff1a;在第 2 个座…2147: 分割长廊的方案数在示例 1 中我们可以在第 2 个座位和第 3 个座位之间的任意空隙放置一个屏风空隙个数为两个座位的下标之差 4−13。如果座位更多例如 corridorSSPPSSPPPSS我们可以在第 2 个座位和第 3 个座位之间的任意空隙放置一个屏风空隙个数为两个座位的下标之差 4−13。在第 4 个座位和第 5 个座位之间的任意空隙放置一个屏风空隙个数为两个座位的下标之差 9−54。这两个屏风如何放置互相独立根据乘法原理划分走廊的方案数为 3⋅412。一般地对于第 3,5,7,… 个座位可以在其到其左侧最近座位之间的任意空隙放置一个屏风空隙个数为两个座位的下标之差。总的方案数为每个屏风的放法之积。不合法的情况1.没有座位。不满足题目「每一段内都恰好有两个座位」的要求。2.一共有奇数个座位。这会导致某一段只有一个座位不满足要求。class Solution { public: int numberOfWays(string corridor) { constexpr int MOD1000000007; long long ans1; int cnt_s0,last_s0; for(int i0;icorridor.size();i){ if(corridor[i]S){ cnt_s; if(cnt_s3 cnt_s%21) ansans*(i-last_s)%MOD; last_si; } } if(cnt_s0 || cnt_s%21) return 0; return ans; } };