UVA11100- The Trip, 2007

UVA11100- The Trip, 2007

题目链接


题意:给定n个正整数。把它们划分成尽量少的严格递增序列(前一个数必须小于后一个数)。输出序列个数的最小值k和这k个序列。

思路:出现次数最多的个数就是序列的个数。输出比較麻烦。但我们仅仅要每k个数输出一个数字,那么最后就能够将全部序列都输出来了。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

const int INF = 1000000;
const int MAXN = 10005;

int n;
int arr[MAXN], num[MAXN];

int main() {
    int t = 0;
    while (scanf("%d", &n) && n) {
        memset(num, 0, sizeof(num));
        for (int i = 0; i < n; i++) { 
            scanf("%d", &arr[i]); 
            num[arr[i]]++; 
        }
        arr[n] = INF;
        int Max = 0, cnt = 0, temp = 0;
        for (int i = 0; i < MAXN; i++) {
            if (num[i] > cnt) {
                cnt = num[i]; 
                temp = i;
            } 
        }
        Max = num[temp];
        if (t) 
            printf("\n");  
        t = 1; 
        printf("%d\n", Max);

        sort(arr, arr + n); 
        for (int i = 0; i < Max; i++) {
            printf("%d", arr[i]);
            for (int j = i + Max; j < n; j += Max) {
                    printf(" %d", arr[j]);  
            }
            printf("\n"); 
        }
    }
    return 0;
}

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109379.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • map key为null_mybatis json

    map key为null_mybatis jsonmybatis返回Map结果集value为Null的情况下丢失key的解决办法本博主之前一直是网络资源的索取者,本着开源精神愿意把自己在开发过程中遇到过的问题以及解决方案分享给大家,这是我的第一篇博客,希望以后能坚持写博客,让大家少走弯路、少踩坑。废话少说,直入主题!springcloud微服务集成mybatis动态多数据源在网上有很多文章可以搜到,这里就不重复造轮子了。如题,网上…

  • 金士顿u盘修复工具怎么用_用diskgenius修复u盘

    金士顿u盘修复工具怎么用_用diskgenius修复u盘重新启动电脑后再插入读卡器试试左栏将列出电脑曾连接的所有网络名称对了,量产工具里有个CDROMSIZE,哪个是干嘛的?怎么填?u盘视频怎么在手机上播放不了怎么办到此就启动成功了,adatau盘量产,其实也不难,只是苹果电脑可能对某些启动盘有些挑剔,大家选择合适的准没问题。云顶攻略在WinPE系统的桌面上,鼠标右击我的电脑”—>管理”—>磁盘管理”,可以看到WinPE系笔记本u盘安装…

  • Mysql怎样控制replace替换的次数?

    Mysql怎样控制replace替换的次数?

    2021年10月21日
  • linux(4)Linux 文件内容查看「建议收藏」

    linux(4)Linux 文件内容查看「建议收藏」查看文件内容总览cat由第一行开始显示文件内容tac从最后一行开始显示,可以看出tac是cat的倒着写!nl显示的时候,顺道输出行号!more一页一页的显示文件内容less

  • 华为悦盒ec6108v9a怎么刷机_华为悦盒官方固件

    华为悦盒ec6108v9a怎么刷机_华为悦盒官方固件华为悦盒EC6108V9A一、产品型号二、工具准备与资料下载1.[当贝网站教程及工具下载](https://www.znds.com/jc/article/7020-1.html)(此网站的工具可以用,但当贝的教程极其混乱,仅供动手者参考)2.固件路径三、刷机教程1.进入盒子的Androidsystemrecovery<3e>2.清除数据3.选择Applyupdatefromexternalstorage四、盒子默认密码五、常用应用一、产品型号名称型号华为悦

    2022年10月27日
  • getParameter、getParameterValues、getParameterMap用法详解「建议收藏」

    getParameter、getParameterValues、getParameterMap用法详解「建议收藏」首先request中的参数parameter是一个map表,如下例(1)当调用getParameter(“hobby”)时只能获取hobby[0],即eat。(2)调用getParameterV

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号