首页 > 其他分享 >D. Min Cost String

D. Min Cost String

时间:2022-10-25 12:12:10浏览次数:83  
标签:字符 String Min int back ++ Cost ans push

传送门

题意:
构造一个字符串,长度为n,只能出现前k个小写字符,要求花费最小,花费为对于 \(i < j, s[i] == s[j]且s[i + 1] == s[j + 1]\)则就记为一个花费


思路:
首先,想一个问题,达到一定的状态后,在加一个字符,不管怎样都是会和前面的重复的,那最小的贡献就是1,意思就是我前面的能不重复就不重复,意思就是我先构造出一个能够达到的最大的重复的字符串,然后不断的循环他就是最优解,然后要构造出这样的字符串就要考验玛丽了,好像不会,然后看了样例1,就每回先放一个字符,然后从这个字符到k,每回都先插这个字符,然后在插另一个,即可,学到了


总结:
对于很难理清的问题,想想最终态的贪心,然后根据最终态往回推,最后得出结论,实现代码,代码实现越巧越好

点击查看代码
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(false);
#define endl '\n'
using namespace std;

typedef long long ll;

int n, k;

int main()
{
    IOS; cin.tie(0), cout.tie(0);
    cin >> n >> k;
    vector<int> ans;
    for (int i = 0; i < k; ++i)
    {
        ans.push_back(i);
        for (int j = i + 1; j < k; ++j)
            ans.push_back(i), ans.push_back(j);
    }
    for (int i = 0; i < n; ++i)
        cout << (char)(ans[i % (k * k)] + 'a');     

    return 0;
}

标签:字符,String,Min,int,back,++,Cost,ans,push
From: https://www.cnblogs.com/jumo-xiao/p/16824419.html

相关文章

  • 安装python的Django时,无法在PyCharm下的terminal进入虚拟环境的问题
    今日将网上他人django源码拉取下来,准备好用anconda工具来新建一个虚拟环境。等环境搭建好之后,打开pycharm发现在terminal中使用无法进入到虚拟环境中。在网上搜索了一番,终......
  • 幸运字符串(ansistring)
    幸运字符串(string)【问题描述】对于一个只包含0和1的字符串,如果A是幸运的,B也是幸运的,那么1AB1也是一个幸运的串。现在定义”0”是一个幸运字符串,请判断给定的字符串S是否是......
  • Redis数据结构(一)-Redis的数据存储及String类型的实现
    1引言Redis作为基于内存的非关系型的K-V数据库。因读写响应快速、原子操作、提供了多种数据类型String、List、Hash、Set、SortedSet、在项目中有着广泛的使用,今天我们......
  • BZOJ 1088(mine)
    1088:[SCOI2005]扫雷MineTimeLimit: 10Sec  MemoryLimit: 162MBSubmit: 659  Solved: 386[​​Submit​​][​​Status​​][​​Discuss​​]Desc......
  • mininet入门实战 学习指南
    mininet入门实战学习指南课程链接:https://www.51openlab.com/platform/curriculum/a18026230ad04063a70b6bb625212f3f/detail/实验一:mininet源码安装与验证指令说明ll......
  • 《Programming Abstractions in C++》总结目录
     1.C++基础 C++程序结构变量数据类型表达式语句 2.C++抽象函数库接口字符串类流类集合类类的设计 3.算法递归回溯排序时间复杂度 4......
  • 1.String源码解析
    1.不变性这里说的不变性指的是类值一旦被初始化,就不能再被改变了,如果被修改,将会是新的类,如程序1-1所示。//程序1-1publicclassApp{publicstaticvoidmain(String[......
  • 2.2 RedisAPI之string
    1.简介字符串键值结构(keyvalue)value的值小于512m,一般建议一个key-value的大小为100k使用场景缓存计数器分布式锁2.命令设置key-value不管key是否存在都设置setkeyvalue......
  • 「ARC151E」Keep Being Substring - 题解
    题意题目链接:Link。有一个序列\(A\)。\(X,Y\)是给定的\(A\)的两个子串,每次可以在\(X\)的开头或末尾增添或删除一个数字,且需满足任意时刻\(X\)非空且为\(A\)的......
  • cstring转string(cstring转string特殊字符)
    如何把64位整型数转换为CString猜测你是不是在64位系统中需要将一个指针变换成CString指针,那么直接用强制类型转换就好CString如何转换为doubledouble=(double)stringa="......