首页 > 其他分享 >日常训练2025-1-14

日常训练2025-1-14

时间:2025-01-14 10:54:06浏览次数:1  
标签:std 14 int ++ 2025 xy 日常

日常训练2025-1-14

C. MEX Cycle

rating:1500

https://codeforces.com/contest/2049/problem/C

思路

注意这是一道构造题。

用xy将环分成两段,为保证xy符合条件,要先给xy的权值设置成01,然后根据两段链的长度的奇偶有两种填数方案。偶数直接01填,奇数要先填一个2然后再随机填。

评述

代码写到红温

代码

#include <bits/stdc++.h>

typedef std::pair<long long, long long> pll;
typedef std::pair<int, int> pii;
#define INF 0x3f3f3f3f
#define MOD 998244353
using i64 = long long;
const int N = 1e5+5;

void solve(){
	int n, x, y;
	std::cin >> n >> x >> y;

	std::vector<int> v(n+1, -1);

	v[x%n] = 1, v[y%n] = 0;
	if ((y - x - 1) % 2 == 1){
		v[x+1] = 2;
		for (int i = y - 1; i > x + 1; i--){
			v[i] = v[(i+1)%n] ^ 1;
		}
	}else{
		for (int i = y - 1; i > x; i--){
			v[i] = v[(i+1)%n] ^ 1;
		}
	}

	if ((n - (y - x + 1)) % 2 == 0){
		for (int i = (y + 1) % n, j = 0; j < (n - (y-x+1)); j++, i++, i %= n){
			v[i] = v[(i+n-1)%n] ^ 1;
		}
	}else{
		v[(x+n-1)%n] = 2;
		for (int i = (y + 1) % n, j = 0; j < (n-(y-x+1))-1; j++, i++, i %= n){
			v[i] = v[(i+n-1)%n] ^ 1;
		}
	}

	for (int i = 1; i < n; i++){
		std::cout << v[i] << ' ';
	}
	std::cout << v[0] << ' ';
	std::cout << '\n';
}

signed main()
{
	std::ios::sync_with_stdio(false);
	std::cin.tie(nullptr);
	std::cout<<std::setiosflags(std::ios::fixed)<<std::setprecision(2);
	int t = 1, i;
	std::cin >> t;
	for (i = 0; i < t; i++){
		solve();
	}
	return 0;
}

标签:std,14,int,++,2025,xy,日常
From: https://www.cnblogs.com/califeee/p/18670356

相关文章

  • 2025年入职/转行网络安全,该如何规划?网络安全职业规划
     网络安全是一个日益增长的行业,对于打算进入或转行进入该领域的人来说,制定一个清晰且系统的职业规划非常重要。2025年,网络安全领域将继续发展并面临新的挑战,包括不断变化的技术、法规要求以及日益复杂的威胁环境。以下是一个关于网络安全职业规划的详细指南,涵盖了从入门到高级......
  • 2025年入职/转行网络安全,该如何规划?网络安全职业规划
     网络安全是一个日益增长的行业,对于打算进入或转行进入该领域的人来说,制定一个清晰且系统的职业规划非常重要。2025年,网络安全领域将继续发展并面临新的挑战,包括不断变化的技术、法规要求以及日益复杂的威胁环境。以下是一个关于网络安全职业规划的详细指南,涵盖了从入门到高......
  • 计算机毕业设计—291145 SSM车辆管理系统(源码免费领)
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用SSM技术建设车......
  • 14. C语言 指针(深入理解)
    本章目录:前言:什么是指针?内存与地址:指针的基础指针的声明与使用指针变量的声明指针与地址的关系空指针与野指针空指针(NULLPointer)野指针(DanglingPointer)指针进阶:从数组到函数指针与数组指针数组指向指针的指针函数指针指针的算术运算常见错误与调试技巧总结前......
  • 2025年35+程序员,是否有机会转型 AI 大模型应用开发?
    对于35岁以上的程序员来说,转型到AI大模型应用开发领域不仅是可能的,而且在很多方面还具有独特的优势。随着人工智能技术的发展,特别是大规模预训练模型(如GPT系列、LLaMA系列等)的应用日益广泛,AI行业迎来了新的发展机遇。对于希望在这个新领域寻找职业发展的成熟程序员而言,这是......
  • 2025 算法方向毕业设计选题推荐汇总 python
    目录前言毕设选题选题迷茫选题的重要性更多选题指导最后 前言  ......
  • 2025 Homebrew 配置 brew install 国内镜像源指南,快速安装加速(01月13日更新)
    2025Homebrew配置brewinstall国内镜像源指南,快速安装加速(01月13日更新)大家好!......
  • xb21cn Office 2016 绿色版 2025更新版
    软件简介office精简版xb21cn最新版是一款微软Office办公软件的免激活office绿色精简版,xb21cn精简office绿色版提供office2010精简版和Office2016精简版,功能保留三大常用组件Word,Excel,PowerPoint,适合日常使用。版本特点MicrosoftOffice2016/2013/2010/2007/2003绿色精......
  • 2025-01-13 闲话
    答应杨卓凡不去北京就每天写闲话,但是今天实在不知道能写啥,于是让chatgpt写。然后被逗笑了。穷尽kimideepseek和chatgpt,只有deepseek的联网搜索,最终给了一个有点人样的仿写。可是ai的generation一点也不口语化,入眼的呆滞与死板就像是水印。看来我们的LLMproducts......
  • 2025毕设springboot 高校毕业班校务管理系统论文+源码
    系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和高校教育改革的不断深化,高校管理正逐步向信息化、智能化方向迈进。高校毕业班作为学校教育的关键环节,其管理工作涉及学生信息、辅导员管理、就业招聘、学校活动组织、学生成绩及请假销假等多个方面,传统的人工......