• 增序子数组个数


    问题描述:

        微软10.15笔试:对于一个数组{1,2,3}它的子数组有{1,2},{1,3}{2,3},{1,2,3},元素之间可以不是连续的,对于数组{5,9,1,7,2,6,3,8,10,4},

            升序子序列有多少个?或者换一种表达为:数组int a[]={5,9,1,7,2,6,3,8,10,4}  。求其所有递增子数组(元素相对位置不变)的个数,  

            例如:{5,9},{5,7,8,10},{1,2,6,8}。

    思想: 动态规划

    代码: 

     1 import java.util.Scanner;
     2 
     3 
     4 public class Main {
     5 
     6     public static void main(String[] argv){
     7         
     8         Scanner in = new Scanner(System.in);        
     9         String [] k = in.nextLine().split(" ");        
    10         int [] s = new int[k.length];
    11         int [] id = new int[k.length];
    12         int [] out = new int[k.length];
    13         int sum=0;
    14         //System.out.println(k.length);
    15         for (int i=0; i<k.length; i++){
    16             s[i]=Integer.parseInt(k[i]);
    17             out[i]=0;
    18         }
    19         in.close();
    20         /* 每个值在数组中的大小序号 */
    21         for(int i=0; i<s.length; i++){
    22             int n=0;
    23             for(int j=0; j<s.length; j++){
    24                 if(s[i]>s[j])
    25                     n++;
    26             }
    27             id[i]=n;            
    28         }
    29         //System.out.println(" "+id[0]+id[1]+id[2]+id[3]);
    30         
    31         /* 动态规划 */
    32         for(int i=0; i<id.length; i++){
    33             
    34             out[id[i]]=out[id[i]]+1;
    35             for(int j=0; j<id[i]; j++){
    36                 out[id[i]]=out[id[i]]+out[j];
    37             }
    38             //System.out.println(" "+id[i]+": "+out[id[i]]);
    39             sum=sum+out[id[i]];
    40         }
    41         
    42         /* 输出结果 */
    43         System.out.println(sum);
    44         
    45     }
    46     
    47 }
  • 相关阅读:
    搭建nginx反向代理用做内网域名转发
    TOMCAT下面发布项目的4种方式
    centos 安装 rabbitmq
    RabbitMQ在windows下的安装
    mysql物理备份
    Linux(CentOS)下,下载安装Nginx并配置
    whereis 命令
    windows下安装以及配置nginx
    CentOS 7安装配置Redis数据库
    CentOS6.5下安装ActiveMQ
  • 原文地址:https://www.cnblogs.com/udld/p/4218415.html
Copyright © 2020-2023  润新知