实验四 贪心算法拓展
第1关:删除数字问题
题目描述:
本关任务:掌握贪心算法的算法思想,并能利用贪心算法的算法思想解决删除数字问题。
给定n个纯数字组成的数字串,删除其中k(k<n)个数字后,剩下的数字按原来的秩序组成一个新的正整数,确定删除方案,使得剩下的数字组成的新的正整数最大。
编程要求
本关的编程任务是补全右侧代码片段main中Begin至End中间的代码,具体要求如下:
在main中,读取大整数字符串并存入字符数组s,然后将字符数组s转换到整型数组a中。读取整数k(表示要删除k个数字),然后根据贪心策略,求解出删除k个数字后剩下的最大整数,并在一行输出。
测试输入:
79502867154829179316
8
预期输出:
987829179316
分析:
即每次删掉处在波谷的数。具体可以参考:educoder算法设计与分析 实验四 贪心算法的删数分析
代码实现:
//
// main.cpp
// step1
//
// Created by ljpc on 2018/12/8.
// Copyright © 2018年 ljpc. All rights reserved.
//
#include <iostream>
#include <cstdio>
#include <cstring>
#include