数列极差问题(贪心) 求数据(一直Wrong)

2024-01-04 02:58

本文主要是介绍数列极差问题(贪心) 求数据(一直Wrong),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/*日期:2011-10-21
  作者:xiaosi
  题目: 数列极差问题(贪心)
*/
#include<iostream>
#include<cstdio>
#include<stdlib.h>
#include<math.h>
using namespace std;
#define Maxint   999999
#define Minint   -1
int progression[2001];
int progression1[2001];
int cmp(const void *a,const void *b)
{
    return *(int *)a-*(int *)b;
}
int Max(int progression[],int n)
{
    int i,j,a,b,max;
    for(i=0;i<n-1;i++)//求max
    {
        a=0;b=1;
        for(j=2;j<n;j++)
        {
            if(progression[j]<progression[a]||progression[j]<progression[b])
            {
                if(progression[a]>progression[b])
                {
                    a=j;
                }
                else
                {
                    b=j;
                }
            }
        }
        max=progression[a]*progression[b]+1;
        progression[a]=max;
        progression[b]=Maxint;
    }
    return max;
}
int Min(int progression[],int n)
{
    int i,j,a,b,min;
    for(i=n-2;i>=0;i--)//求min
    {
        a=n-2;b=n-1;
        for(j=n-3;j>=0;j--)
        {
            if(progression[j]>progression[a]||progression[j]>progression[b])
            {
                if(progression[a]<progression[b])
                {
                    a=j;
                }
                else
                {
                    b=j;
                }
            }
        }
        min=progression[a]*progression[b]+1;
        progression[a]=min;
        progression[b]=Minint;
    }
    return min;
}
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        int min,max,M,num,i,j;
        for(i=0;i<n;i++)
        {
            scanf("%d",&progression[i]);
        }
        qsort(progression,n,sizeof(progression[0]),cmp);
        for(i=0;i<n;i++)
        {
            progression1[i]=progression[i];
        }
        max=Max(progression,n);
        //min=Min(progression1,n);
        min=1;
        for(i=n-1;i>=0;i--)
        {
            min=min*progression1[i]+1;
        }
        M=max-min;
        if(M==0)
        {
            num=1;
        }
        else
        {
            num=(int)log10(M)+1;
        }
        printf("%d\n%d\n",num,M);
    }
    return 0;
}

这篇关于数列极差问题(贪心) 求数据(一直Wrong)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/567952

相关文章

SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题

《SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题》dynamic-datasource-spring-boot-starter是一... 目录概要整体架构构想操作步骤创建数据源切换数据源后续问题小结概要自己闲暇时间想实现一个多租户平台,

VSCode中C/C++编码乱码问题的两种解决方法

《VSCode中C/C++编码乱码问题的两种解决方法》在中国地区,Windows系统中的cmd和PowerShell默认编码是GBK,但VSCode默认使用UTF-8编码,这种编码不一致会导致在VSC... 目录问题方法一:通过 Code Runner 插件调整编码配置步骤方法二:在 PowerShell

mybatis-plus分页无效问题解决

《mybatis-plus分页无效问题解决》本文主要介绍了mybatis-plus分页无效问题解决,原因是配置分页插件的版本问题,旧版本和新版本的MyBatis-Plus需要不同的分页配置,感兴趣的可... 昨天在做一www.chinasem.cn个新项目使用myBATis-plus分页一直失败,后来经过多方

如何使用C#串口通讯实现数据的发送和接收

《如何使用C#串口通讯实现数据的发送和接收》本文详细介绍了如何使用C#实现基于串口通讯的数据发送和接收,通过SerialPort类,我们可以轻松实现串口通讯,并结合事件机制实现数据的传递和处理,感兴趣... 目录1. 概述2. 关键技术点2.1 SerialPort类2.2 异步接收数据2.3 数据解析2.

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

通过ibd文件恢复MySql数据的操作方法

《通过ibd文件恢复MySql数据的操作方法》文章介绍通过.ibd文件恢复MySQL数据的过程,包括知道表结构和不知道表结构两种情况,对于知道表结构的情况,可以直接将.ibd文件复制到新的数据库目录并... 目录第一种情况:知道表结构第二种情况:不知道表结构总结今天干了一件大事,安装1Panel导致原来服务

Flask解决指定端口无法生效问题

《Flask解决指定端口无法生效问题》文章讲述了在使用PyCharm开发Flask应用时,启动地址与手动指定的IP端口不一致的问题,通过修改PyCharm的运行配置,将Flask项目的运行模式从Fla... 目录android问题重现解决方案问题重现手动指定的IP端口是app.run(host='0.0.

Seata之分布式事务问题及解决方案

《Seata之分布式事务问题及解决方案》:本文主要介绍Seata之分布式事务问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Seata–分布式事务解决方案简介同类产品对比环境搭建1.微服务2.SQL3.seata-server4.微服务配置事务模式1

mysql关联查询速度慢的问题及解决

《mysql关联查询速度慢的问题及解决》:本文主要介绍mysql关联查询速度慢的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql关联查询速度慢1. 记录原因1.1 在一次线上的服务中1.2 最终发现2. 解决方案3. 具体操作总结mysql

Jmeter如何向数据库批量插入数据

《Jmeter如何向数据库批量插入数据》:本文主要介绍Jmeter如何向数据库批量插入数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Jmeter向数据库批量插入数据Jmeter向mysql数据库中插入数据的入门操作接下来做一下各个元件的配置总结Jmete