A - Special Permutation(构造)Codeforces Round #686 (Div. 3)
原题链接; http://codeforces.com/contest/1454/problem/A
测试样例
input
2
2
5
output
2 1
2 1 5 3 4
题意: 给你一个整数 n n n,构造一个 1 1 1~ n n n的排列,使得元素对应的位置不等于其值。
解题思路: 算是一道构造水题,有很多的方法去构造,最简单的方法就是将 1 1 1~ n n n整体循环一位构造。
AC代码
/*
*blog:https://blog.csdn.net/hzf0701
*邮箱:unique_powerhouse@qq.com
*注:文章若有任何问题请私信我或评论区留言,谢谢支持。
*/
#include<bits/stdc++.h>
#define rep(i,a,n) for(int i=a;i<=n;i++)
#define per(i,n,a) for(int i=n;i>=a;i--)
using namespace std;
typedef long long ll;
const int maxn=1e5;//数组所开最大值
const int mod=1e9+7;//模
const int inf=0x3f3f3f3f;//无穷大
int t,n;
void solve(){
cout<<n<<" ";
rep(i,1,n-1){
cout<<i<<" ";
}
cout<<endl;
}
int main(){
while(cin>>t){
while(t--){
cin>>n;
solve();
}
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)