- 博客(13)
- 收藏
- 关注
原创 L2-010 排座位(并查集)
题面: 布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,对任何一对客人,请编写程序告诉主人他们是否能被安排同席。 输入格式: 输入第一行给出3个正整数:N(≤100),即前来参宴的宾客总人数,则这些人从1到N编号;M为已知两两宾客之间的关系数;K为查询的条数。随后M行,每行给出一对宾客之间的关系,格式为:宾客1 宾客2 关系,其中关系为1表示是朋友,-1表示是死对头。注意两个人不可能既是朋友又是敌人。最后K行,每行给出一
2022-04-21 17:50:39
193
原创 AtCoder Beginner Contest 242——1111gal password
题意:找到长度为n位的且满足相邻位之差的绝对值不超过1数字的方案总数 大致思路如下: const int mod = 998244353; //dp[i][j]表示前i个位且第i位填j满足要求的方案数 LL dp[N][11]; signed main(){ int n=read(); for(int i=1;i<=9;i++) dp[1][i]=1;//初值,最左位填i的方案数 for(int i=2;i<=n;i++){ for(int j=1.
2022-03-06 21:22:38
420
原创 AtCoder Beginner Contest 242——Range Pairing Query
莫队模板题: 题意:给你编号分别为1~n的人,第i个人有一个颜色colori,每次询问求出[l, r]这个区间内最多可以组成多少对颜色相同的人 在该区间内,成对条件就是cnt[x]是偶数,否则就不成对 #include<bits/stdc++.h> using namespace std; const int maxn = 1e6; struct node{ //离线记录查询操作 int L, R, k; //k:查询操作的原始顺序 }q[
2022-03-06 21:12:30
331
原创 最大公共子串长度
最大公共子串长度问题就是: 求两个串的所有子串中能够匹配上的最大长度是多少。 比如:"abcdkkk" 和 "baabcdadabc", 可以找到的最长的公共子串是"abcd",所以最大公共子串长度为 4。 #include <iostream> #define db double using namespace std; const int N = 1e4,M = 2000; int dp[N][N]; int main(){ string s1,s2; cin>>s
2022-02-05 14:39:42
1159
原创 白兔的分身术
时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 白兔学会了分身术。 一开始有一只白兔,接下来会进行k轮操作,每一轮中每一只白兔都会变成p只白兔。 要求k轮后白兔的总数恰好为n。 要求找到两个正整数p,k,最大化p+k 输入描述: 输入一个正整数n(2<=n<=1018) 输出描述: 输出一个整数,p+k的最大值 示例1 输入 2 输出 3 说明 p
2022-01-21 23:14:41
3407
原创 最大连续子序列
给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j <= K。最大连续子序列是所有连续子序列中元素和最大的一个, 例如给定序列{ -2, 11, -4, 13, -5, -2 },其最大连续子序列为{ 11, -4, 13 },最大和 为20。现在增加一个要求,即还需要输出该子序列的第一个和最后一个元素。 Input 测试输入包含若干测试用例,每个测试用例占2行,第1行给出正整数K(
2021-12-04 16:20:49
171
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅