【每日一题】Problem 359B. Permutation
解决思路
虽然题解思路里写着
找规律题:
- 如果结果为
,只需要每个 同向即可,即都为整数或负数 - 如果结果为
,则只需要任意一个 的值为 ,且与其他的 方向不同,那么一正一负中和后,相差的结果正好是 。取 , 根据题意 ,因此此方法可行
#include <bits/stdc++.h>
int main() {
int n, k; std::cin >> n >> k;
int a, b; a = b = 0;
if (k > 0) {
a = 1, b = 1 + k;
std::cout << a << " " << b << " ";
}
for (int i = 2 * n; i >= 1; --i) {
if (i == a || i == b) continue;
std::cout << i << " ";
}
std::cout << std::endl;
}
本文来自博客园,作者:HelloEricy,转载请注明原文链接:https://www.cnblogs.com/HelloEricy/p/17501185.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步