CF1427A Avoiding Zero 题解

技术CF1427A Avoiding Zero 题解 CF1427A Avoiding Zero 题解CF1427A Avoiding Zero 题解Content
请将一个长度为 \(n\) 的数列

CF1427A避零问题解读

CF1427A避零问题解读

Content

请重新排序长度为\(n\)的序列\(A\),以便该序列的所有前缀相加\ neq 0 \),或者证明不存在这样的方案。

数据范围:\(t\) 组数据,\(1\leqslant t\leqslant 1000\),\(1\leqslant n\leqslant 50\),\(-50\leqslant a_i\leqslant A_i\leqslant 50\)。

Solution

不难发现,当且仅当所有数之和为\(0\)时,并没有满足题目要求的方案。

否则,把所有正整数放在一起,把所有负整数放在一起,然后分类讨论:

如果所有正整数之和大于所有负整数之和的绝对值,那么就要考虑先放所有正整数,后放所有负整数,这样才能保证前缀和不是\(0\)。

否则,我们先放所有的负整数,然后再放所有的正整数。

如果有\(0\),放在所有非零数字之后就足够了。

这个想法有点复杂,但实现起来并不难,不是吗?

Code

int n,a[57],sum,油底壳,sumn,po[57],ne[57];

int main(){ 0

MT {

n=Rint,sum=油底壳=sumn=0;

F(int,I,0,n)po[I]=ne[I]=0;

F(int,I,1,n) sum=(a[i]=Rint),油底壳=a[i] * (a[i] 0),sumn=(-a[I])*(a[I]0);

if(!总和){否;继续;}

是;

F(int,I,1,n)if(a[I]0)po[po[0]]=a[I];否则if(a[I]0)ne[ne[0]]=a[I];

if(贮槽sumn) {F(int,I,1,po[0])print _ space(po[I]);F(int,I,1,ne[0])print _ space(ne[I]);F(int,I,1,n-po[0]-ne[0])printf(' 0 ');}

else {F(int,I,1,ne[0])print _ space(ne[I]);F(int,I,1,po[0])print _ space(po[I]);F(int,I,1,n-po[0]-ne[0])printf(' 0 ');}

puts(' ');

}

返回0;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147914.html

(0)

相关推荐

  • 如何进行C#回车切换焦点实现的探讨

    技术如何进行C#回车切换焦点实现的探讨今天就跟大家聊聊有关如何进行C#回车切换焦点实现的探讨,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C#回车切换焦点实现的探

    攻略 2021年11月24日
  • what是什么意思中文,whatsupman什么意思

    技术what是什么意思中文,whatsupman什么意思意思是:喂what是什么意思中文,伙计,最近怎样。What s up近来如何
    1、What` s up with this window, dude?
    这窗有什么

    生活 2021年10月24日
  • Java编程中最容易忽略的10个常见问题分别有哪些

    技术Java编程中最容易忽略的10个常见问题分别有哪些本篇文章给大家分享的是有关Java编程中最容易忽略的10个常见问题分别有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟

    攻略 2021年10月29日
  • 怎么使用scikit-learn工具来进行PCA降维

    技术怎么使用scikit-learn工具来进行PCA降维本篇文章为大家展示了怎么使用scikit-learn工具来进行PCA降维,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.

    2021年11月2日
  • SQL中序列的用法示例

    技术SQL中序列的用法示例小编给大家分享一下SQL中序列的用法示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、语法 create

    攻略 2021年12月13日
  • 鳄怎么读,alligator怎么读

    技术鳄怎么读,alligator怎么读展开全部1鳄怎么读、alligator英文读音:alligator 英[ˈælɪgeɪtə(r)];美[ˈælɪˌɡetɚ] 。 2、意思:短吻鳄;短吻鳄皮革;鳄口式工具;鳄鱼般的

    生活 2021年10月26日