首页 > 其他分享 >2024.9.12 CF1783 VP

2024.9.12 CF1783 VP

时间:2024-09-12 21:26:42浏览次数:10  
标签:typedef 12 return int 2024.9 tt long VP define

A:先将 \(a\) 降序排序,此时只有位置 \(2\) 有可能不满足条件。找到最小的 \(i\ge 2\) 使得 \(a_1\neq a_i\)(不存在则无解),然后交换 \(a_2,a_i\),即为一个解。

点击查看代码
#include<bits/stdc++.h>
#define int long long
#define psbk push_back
#define fst first
#define scd second
#define umap unordered_map
#define pqueue priority_queue
#define vc vector
#define endl '\n'
#define all(v) v.begin(), v.end()
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int, int> pii;
constexpr int inf = 0x3f3f3f3f;
int n, a[55];
bool cmp(int x, int y)
{
	return x > y;
}
void solve()
{
	cin >> n;
	for(int i=1;i<=n;i++)
	{
		cin >> a[i];
	}
	sort(a + 1, a + n + 1, cmp);
	for(int i=2;;i++)
	{
		if(i > n)
		{
			cout << "NO" << endl;
			return;
		}
		if(a[i] != a[1])
		{
			swap(a[2], a[i]);
			break;
		}
	}
	cout << "YES" << endl;
	for(int i=1;i<=n;i++)
	{
		cout << a[i] << ' ';
	}
	cout << endl;
}
signed main()
{
//	freopen("1.in","r",stdin);
//	freopen("1.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int tt;
	cin >> tt;
	while(tt--)
	{
		solve();
	}
	return 0;
}

B

点击查看代码
#include<bits/stdc++.h>
#define int long long
#define psbk push_back
#define fst first
#define scd second
#define umap unordered_map
#define pqueue priority_queue
#define vc vector
#define endl '\n'
#define all(v) v.begin(), v.end()
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int, int> pii;
constexpr int inf = 0x3f3f3f3f;
int n, a[55][55];
void solve()
{
	cin >> n;
	int cur1 = 1, cur2 = n * n;
	for(int i=1;i<=n;i++)
	{
		if(i % 2)
		{
			for(int j=1;j<=n;j++)
			{
				if((i + j) % 2 == 0)
				{
					a[i][j] = cur1++;
				}
				else
				{
					a[i][j] = cur2--;
				}
			}
		}
		else
		{
			for(int j=n;j;j--)
			{
				if((i + j) % 2 == 0)
				{
					a[i][j] = cur1++;
				}
				else
				{
					a[i][j] = cur2--;
				}
			}
		}
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			cout << a[i][j] << ' ';
		}
		cout << endl;
	}
}
signed main()
{
//	freopen("1.in","r",stdin);
//	freopen("1.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int tt;
	cin >> tt;
	while(tt--)
	{
		solve();
	}
	return 0;
}

C

点击查看代码
#include<bits/stdc++.h>
#define int long long
#define psbk push_back
#define fst first
#define scd second
#define umap unordered_map
#define pqueue priority_queue
#define vc vector
#define endl '\n'
#define all(v) v.begin(), v.end()
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int, int> pii;
constexpr int inf = 0x3f3f3f3f;
int n, m, pa[500005];
struct Node {
	int x, id;
} a[500005];
bool cmp(Node x, Node y)
{
	return x.x == y.x ? x.id > y.id : x.x < y.x;
}
void solve()
{
	cin >> n >> m;
	for(int i=1;i<=n;i++)
	{
		cin >> a[i].x;
		a[i].id = i;
	}
	sort(a + 1, a + n + 1, cmp);
	for(int i=1;i<=n;i++)
	{
		pa[a[i].id] = i;
	}
	int sum = 0;
	for(int i=1;i<=n;i++)
	{
		if(sum + a[i].x > m)
		{
			int ans = 1;
			for(int j=1;j<=n;j++)
			{
				ans += (i - 1 < (j >= i) + a[j].id - 1);
			}
			int ID = pa[i];
			if(ID >= i && sum - a[i - 1].x + a[ID].x <= m)
			{
				ans--;
			}
			cout << ans << endl;
			return;
		}
		sum += a[i].x;
	}
	cout << 1 << endl;
}
signed main()
{
//	freopen("1.in","r",stdin);
//	freopen("1.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int tt;
	cin >> tt;
	while(tt--)
	{
		solve();
	}
	return 0;
}

D

点击查看代码
#include<bits/stdc++.h>
#define int long long
#define psbk push_back
#define fst first
#define scd second
#define umap unordered_map
#define pqueue priority_queue
#define vc vector
#define endl '\n'
#define all(v) v.begin(), v.end()
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int, int> pii;
constexpr int inf = 0x3f3f3f3f, mo = 998244353;
int n, a[305], dp[305][180010];
int qpw111(int x, int y)
{
	if(!y)
	{
		return 1;
	}
	int tmp = qpw111(x, y / 2);
	return tmp * tmp % mo * (y % 2 ? x : 1) % mo;
}
int qpw(int x, int y)
{
	int phimo = mo - 1;
	return qpw111(x % mo, (y % phimo + phimo) % phimo);
}
signed main()
{
//	freopen("1.in","r",stdin);
//	freopen("1.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n;
	for(int i=1;i<=n;i++)
	{
		cin >> a[i];
	}
	dp[1][a[2] + 90000] = 1;
	dp[2][a[3] + a[2] + 90000] = 1;
	if(a[2])
	{
		dp[2][a[3] - a[2] + 90000] = 1;
	}
	for(int i=2;i<n-1;i++)
	{
		for(int j=-90000;j<=90000;j++)
		{
			if(!j)
			{
				(dp[i + 1][a[i + 2] + 90000] += dp[i][90000]) %= mo;
			}
			else
			{
				if(a[i + 2] + j <= 90000)
				{
					(dp[i + 1][a[i + 2] + j + 90000] += dp[i][j + 90000]) %= mo;
				}
				if(a[i + 2] - j <= 90000)
				{
					(dp[i + 1][a[i + 2] - j + 90000] += dp[i][j + 90000]) %= mo;
				}
			}
		}
	}
	int ans = 0;
	for(int i=0;i<=180000;i++)
	{
		(ans += dp[n - 1][i]) %= mo;
	}
	cout << ans << endl;
	return 0;
}

标签:typedef,12,return,int,2024.9,tt,long,VP,define
From: https://www.cnblogs.com/Byf23333/p/18411110

相关文章

  • YOLOv8改进 | 模块缝合 | C2f 融合SCConv提升检测性能【CVPR2023】
    秋招面试专栏推荐 :深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转......
  • [20240912]记录使用tnsping遇到的问题.txt
    [20240912]记录使用tnsping遇到的问题.txt--//tnsping用来检测数据库是否连接存在许多局限性,记录自己在使用tnsping遇到的问题.1.环境:--//关闭数据库开启监听.SYS@book>shutdownimmediate;Databaseclosed.Databasedismounted.ORACLEinstanceshutdown.--//服务端监听配置......
  • 今日打卡:洛谷:P1248 加工生产调度/P1251 餐巾计划问题
    昨天虽然打了卡,但是因为时间问题,所以没做题,今天补回来。今天的运势也真服了,我今天没出过门,也不会装逼啊!还有,我不开电脑怎么做题啊?请教问题也找不到人啊!P1248加工生产调度:#include<bits/stdc++.h>usingnamespacestd;structnumber{ intnum,ind; boolsign; boolo......
  • AMD EPYC(霄龙)系列100-000000506、100-000001287、100-000001289、100-000001285 AI处
    AMDEPYC(霄龙)7003系列处理器为主流数据中心服务器树立性能和能效新标杆。相对于前两代产品,新的AMDEPYC7003系列处理器通过改进的工艺实现了基础及Boost频率的提升,并通过架构革新实现了19%的IPC提升。同时,AMD也在IODie中集成了新的安全处理器(SecureProcessor);能够在不影响性能......
  • [2024-9-12]如何在Z-Library中免费下载书籍讲解流程
    无不良引导,共享知识,书籍乃进步阶梯。一、登录官网https://z-lib.io/按要求进行注册。二、下载Discordhttps://discord.com/经过我的测试网页版应该是没有注册功能的,先下载再注册。三、免费下载书籍搜索图书,点击索取此书。 然后接受邀请,转到help,帮助内容如下:1)H......
  • 2024年9月12日(k8s环境及测试 常用命令)
    一、环境准备及测试1、报错处理:kube-systemcalico-node-5wvln0/1Init:0/3016hkube-systemcalico-node-d7xfb0/1Init:0/3016hkube-system......
  • 2024.09.12 1749版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • KubeSphere 社区双周报| 2024.08.30-09.12
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2024.08.30-09.12。贡献者名单近期重要更新KubeSphereK......
  • 单实例-oracle巡检模版 -20240912
    单实例-oracle巡检模版 -20240912——————————————————————————————————————————----2024年9月12日16:38:47----bayaim----以下内容纯属个人原创,纯属个人多年经验总结,非喜勿喷,Gun~—————————————————————......
  • 9.12 模拟赛
    B.la题意:给定\(n,m\)和\(1\simm\)的排列\(b\)。有一个长度为\(n\)的数组\(a\),所有\(a_i\)的值在\([1,m]\)中随机。定义一次变换为同时对所有\(i\in[1,n]\)执行\(a_i\getsb_{a_i}\)。求期望多少次能将所有\(a\)变回原样。首先将期望转化成答案总和除......