poj 3253 贪心 同 合并果子_cc_hw的博客-程序员宝宝

技术标签: 贪心  dp  

这道题  和合并果子  一样  每次得到最优解

每次把得到的结果进行再次贪心

最后得到最优解

#include<stdio.h>
#define swap(a,b) a=a^b,b=a^b,a=a^b
int main()
{
    int n;
    long long ans=0;
    long long num[20008];
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%lld",&num[i]);
    }
    while(n>1)
    {
        int m1=0,m2=1;
        if(num[m1]>num[m2])swap(num[m1],num[m2]);

        for(int i=2;i<n;i++)
        {
            if(num[i]<num[m1])
            {
                m2=m1;
                m1=i;
            }
            else if(num[i]<num[m2])
            {
                m2=i;
            }
        }

        ans+=(num[m1]+num[m2]);

        if(m1==n-1)swap(m1,m2);
        num[m1]=num[m1]+num[m2];
        num[m2]=num[n-1];
        n--;
    }
    printf("%lld\n",ans);
}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010840444/article/details/21405591

智能推荐

(OK) 编译cBPM-android—CentOS 7—NDK8—androideabi-4.7—API14—2版_ztguang的博客-程序员宝宝

宿主机:CentOS 7 + android-ndk-r8e-linux-x86_64.tar.bz2 + arm_linux-androideabi-4.7 + API-14手机:MB526 + Android 4.4.4 + armv7[[email protected] android-on-linux]# wget -c https://dl.google.com/android/n

数字信号处理实验2:利用快速离散傅里叶变换分析信号的频谱_朴樕的博客-程序员宝宝_离散傅里叶变换频谱

实验2 利用快速离散傅里叶变换分析信号的频谱一、实验目的1、通过这一实验,能够熟练掌握快速离散傅里叶变换FFT的原理及其用 FFT 进行频谱分析的基本方法。2、在通过计算机上用软件实现 FFT 及信号的频谱分析。3、通过实验对离散傅里叶变换的主要性质及 FFT 在数字信号处理中的重要作用有进一步的了解。二、实验要求及内容第一题代码:clear all;N=32;n=0:N-1;xn=sin(2pin/32);subplot(2,1,1);plot(n,xn);xlabel(‘n’)

Stripies POJ - 1862 贪心_Joovo的博客-程序员宝宝

大意: 一个序列 xi 要求对其中两两操作,拿出两个 x,y" role="presentation" style="position: relative;">x,yx,yx,y 计算出2xy" role="presentation" style="position: relative;">2xy−−√2xy2\sqrt{xy} 并放回分析: 贪心策略不是首尾就是正向逆向,简单证明三

JavaFX中的TextField类概述_cumao2792的博客-程序员宝宝

The TextField classin JavaFX is used to create a control that allows the user to enter in a single line of text. It supports having prompt text (i.e., text that informs the user what the TextField i...

几种实现ListView顶部悬浮效果_阁楼猫的博客-程序员宝宝

顶部悬浮,这个是老生常谈的控件,一搜索网上大篇幅的介绍,有几种实现方式: 1.简单的实现ListView顶部悬浮http://blog.csdn.net/ljfbest/article/details/387656412.Android 仿美团网,大众点评购买框悬浮效果,使用的ScrollView http://blog.csdn.net/xiaanming/article/details/1

TensorFlow入门_FoerKent的博客-程序员宝宝_tensorflow入门

TensorFlow入门(二)一、预备知识1、tf.where(condition=seq, x=A, y=B, name=None)函数实现了选择的功能。该函数有3个参数,第一个为选择条件根据,是一个bool型的张量。当张量某一位置为True时,函数会返回第二个参数中相同位置的处的值,否则会返回第三个参数中相同位置处的值,最终返回与seq维度相同的张量。2、tf.greater(a, b)函数的输入是两个维度相同的张量,此函数会比较第一个输入张量和第二个输入张量中相同位置处每一个元素的大小,如果在该

随便推点

单片机C语言C51程序中的基本结构_WangLanguager的博客-程序员宝宝_c51程序结构

一.顺序结构顺序结构是最基本、最简单的结构,在这种结构中,程序由低地址到高地址依次执行,如图给出顺序结构流程图,程序先执行A操作,然后再执行B操作。二.选择结构选择结构可使程序根据不同的情况,选择执行不同的分支,在选择结构中,程序先都对一个条件进行判断。当条件成立,即条件语句为“真”时,执行一个分支,当条件不成立时,即条件语句为“假”时,执行另一个分支。如图:当条件S成立时,...

泰坦尼克号python数据分析统计服_利用python进行泰坦尼克生存预测——数据探索分析..._weixin_39626211的博客-程序员宝宝

最近一直断断续续的做这个泰坦尼克生存预测模型的练习,这个kaggle的竞赛题,网上有很多人都分享过,而且都很成熟,也有些写的非常详细,我主要是在牛人们的基础上,按照数据挖掘流程梳理思路,然后通过练习每一步来熟悉应用python进行数据挖掘的方式。数据挖掘的一般过程是:数据预览——>数据预处理(缺失值、离散值等)——>变量转换(构造新的衍生变量)——>数据探索(提取特征)——>训练——>调优——>验...

Hadoop核心之HDFS 架构设计_agent_x的博客-程序员宝宝

来自:http://blog.csdn.net/suifeng3051/article/details/48548341 概述:HDFS即Hadoop Distributed File System分布式文件系统,它的设计目标是把超大数据集存储到分布在网络中的多台普通商用计算机上,并且能够提供高可靠性和高吞吐量的服务。分布式文件系统要比普通磁盘文件系统复杂,因为它要引入网络编程,分布式文件系统要容

基于库的STM32软件复位_0.零点开发的博客-程序员宝宝_stm32软件复位

基于库的STM32软件复位(库V3.5)在官方软件库的 core_cm3.h 文件里直接提供了系统复位的函数 :/* ################################## Reset function ############################################ *//*** @brief Initiate a system

Netty入门——手写Dubbo框架_hornsey2012的博客-程序员宝宝

Dubbo框架本身就是一个RPC框架。RPC的服务提供者将自身的服务名、IP和端口存放在服务协调器ZK的某个节点下,服务消费者通过监听ZK的该节点,获取可调用的服务名,以及服务提供者的IP和端口信息。本文使用netty实现一个简单的Dubbo框架,使用zk作为注册服务器,完成RPC的整个过程。

Delphi中的循环结构_鬼A魅的博客-程序员宝宝

Delphi中的循环结构For循环for循环的格式:for i:= 0 to 10 do begin {在这里完成你的业务功能} end;for i:= 10 downto 0 do begin {在这里完成你的业务功能} end;说明:for循环中需要使用到循环变量,代码中使用i作为循环变量,for循环正式通过循环变

推荐文章

热门文章

相关标签