Balanced Array
文章目录
- 一、Balanced Array
- 总结
一、Balanced Array
本题链接: Balanced Array
题目:
B. Balanced Array
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
You are given a positive integer n, it is guaranteed that n is even (i.e. divisible by 2).
You want to construct the array a of length n such that:
The first n2 elements of a are even (divisible by 2);
the second n2 elements of a are odd (not divisible by 2);
all elements of a are distinct and positive;
the sum of the first half equals to the sum of the second half (∑i=1n2ai=∑i=n2+1nai).
If there are multiple answers, you can print any. It is not guaranteed that the answer exists.
You have to answer t independent test cases.
Input
The first line of the input contains one integer t (1≤t≤104) — the number of test cases. Then t test cases follow.
The only line of the test case contains one integer n (2≤n≤2⋅105) — the length of the array. It is guaranteed that that n is even (i.e. divisible by 2).
It is guaranteed that the sum of n over all test cases does not exceed 2⋅105 (∑n≤2⋅105).
Output
For each test case, print the answer — “NO” (without quotes), if there is no suitable answer for the given test case or “YES” in the first line and any suitable array a1,a2,…,an (1≤ai≤109) satisfying conditions from the problem statement on the second line.
Example
input
5
2
4
6
8
10
output
NO
YES
2 4 1 5
NO
YES
2 4 6 8 1 3 5 11
NO
本博客给出本题截图:
题意:题中要求实现这么一种数列,要求前n / 2
项的和与后n / 2
项的和相等,并且要求对于第n / 2
个元素和第n / 4
个元素要求是偶数,如果存在这么一种数组,则输出YES
并输出数组中的所有元素的值 (答案不唯一),如果不存在这样的数组,则输出NO
AC代码
#include <iostream>using namespace std;int main()
{int n;cin >> n;while (n -- ){int m;cin >> m;if (m % 2 == 0 && m % 4 != 0){puts("NO");continue;}puts("YES");int res1 = 0, res2 = 0;for (int i = 0; i < m / 2; i ++ ) {int t = (i + 1) * 2;cout << t << ' ';res1 += t;}for (int i = 0; i < m / 2 - 1; i ++ ) {int t = i * 2 + 1;cout << t << ' ';res2 += t;}cout << res1 - res2 << endl;}return 0;
}
总结
水题,不解释
Balanced Array相关推荐
- [codeforces 1343B] Balanced Array 奇+奇=偶,奇+偶=奇,偶+偶=偶
Codeforces Round #636 (Div. 3) 比赛人数12253 [codeforces 1343B] Balanced Array 奇+奇=偶,奇+偶=奇,偶+偶=偶 总 ...
- Codeforces Round #636 (Div. 3)(ABC)
A. Candies 水题,暴力即可 代码如下: #include<bits/stdc++.h> #define ll long long using namespace std;int ...
- 19级爪哇程序设计新手赛2.0(参考题解)
看完它 A - Candies CodeForces - 1343A 题意: (1)玄学观察法,咋们先来看看案例: 3 --> 1 除以3==2^2-1 6 --> 2 除以3 7 --& ...
- Codeforces Round #636 (Div. 3)部分题解
链接:Codeforces Round #636 (Div. 3) A - Candies 题意:求出一个x满足x+2∗x+4∗x+⋯+2k−1∗x=n且k>1 思路:提出x得x∗(1+2+4+ ...
- Codeforces Round #636 (Div. 3)
Codeforces Round #636 (Div. 3)(2020.4.21) A.Candies 因为题目保证了有解,所以我们枚举一下 k k k就行了. #include <bits/s ...
- Codeforces Round #636 (Div. 3) 题解
A. Candies 查看题解 数学 B. Balanced Array 查看题解 数学 C. Alternating Subsequence 查看题解 贪心 D. Constant Palindro ...
- Codeforces Round #636 (Div. 3) A-D
A. Candies 题意 给定一个整数,判断是否存在 思路 先对公式进行预处理 明显是一个等比数列 化简后得到 因为答案一定存在 所以用快速幂从小到大枚举即可 #include<iostrea ...
- 老男孩上海校区Python面试题
python面试题 第一章:python基础 数据类型: 1 字典: 1.1 现有字典 dict={'a':24,'g':52,'i':12,'k':33}请按字典中的 value 值进行排序? 1. ...
- LeetCode: 108. Convert Sorted Array to Binary Search Tree
题目 Given an array where elements are sorted in ascending order, convert it to a height balanced BST. ...
最新文章
- 超市购物打印小票的简单程序 记录下来
- Yahoo中国变脸?
- IBM Thinkpad T43-44U 升级到 2G 内存后少了 66M
- 【原】移动端界面的适配
- 跟我一起学extjs5(05--主界面上增加顶部和底部区域)
- Ubuntu Server 命令行下的默认语言 中文乱码
- 如何使用JavaScript更改元素的类?
- 待续未完- 自己写后台内容管理程序 - 完全手写不用框架的
- 如何在Web应用程序中使用TWAIN驱动程序的自定义功能?
- 《NIOSII那些事儿》rev7.0 PDF版本发布
- android 监听界面变化,Android之页面有变化用onWindowFocusChanged来监听权限是否开启...
- 手把手带你玩转Tensorflow 物体检测 API (1)——运行实例
- 为什么hbase里没有表会显示表已经存在_0712-6.2.0-HBase快照异常
- Java 设计模式之 Composite 组合模式
- SIA:全球半导体行业销售额7月达到454亿美元 创下月度纪录
- Abp vnext 授权(Authorization)
- 2. PHP 编译安装
- linux recv返回值,Nginx 的recv() failed 错误解决一例
- Java的下载与安装简易教程
- 移动支付这回真的逆天了!什么才是真正的资本运作?让微信春晚来告诉你!...