贪心+构造,1924A - Did We Get Everything Covered?

ops/2024/9/23 6:28:46/

目录

一、题目

1、题目描述

2、输入输出

2.1输入

2.2输出

3、原题链接

二、解题报告

1、思路分析

2、复杂度

3、代码详解


一、题目

1、题目描述

2、输入输出

2.1输入

2.2输出

3、原题链接

1924A - Did We Get Everything Covered?

二、解题报告

1、思路分析

我们从头遍历s,用集合st代表出现的前k个小写字母的字符集

如果 st 在某个位置变成全集,说明长度为1的序列是ok的

我们将st清空,接着遍历

st 又在某个位置变成全集,说明长度为2的序列是ok的

……

那么如何输出非法方案?

我们依次将每个全集时刻加入st的字符保存,然后再加上一个非法时不在st中的任意字符即可

2、复杂度

时间复杂度: O(N)空间复杂度:O(N)

3、代码详解

 ​
import sys
import math
import heapq
from collections import defaultdict, Counter
from string import ascii_lowercaseinput = lambda: sys.stdin.readline().strip()
output = lambda x: sys.stdout.write(str(x) + '\n')
MII = lambda: map(int, input().split())
LMI = lambda: list(map(int, input().split()))
LI = lambda: list(input())
II = lambda: int(input())
I = lambda: input()
fmax = lambda x, y: x if x > y else y
fmin = lambda x, y: x if x < y else y# sys.stdin = open('in.txt', 'r')def solve():n, k, m = LMI()s = I()st = 0full = (1 << k) - 1ans = ''for x in s:if ord(x) - ord('a') < k:st |= 1 << (ord(x) - ord('a'))if st == full:st = 0ans += xif len(ans) < n:print('NO')for i in range(k):if ((st >> i) & 1) == 0:ans += str(chr(ord('a') + i)) * (n - len(ans))breakprint(ans)else:print('YES')    passif __name__ == "__main__":T = 1T = II()for _ in range(T):solve()


http://www.ppmy.cn/ops/108700.html

相关文章

PPStructure核心源码研究(一)总论

通过系列文章,来记录PPStructure源代码研究过程中学习到的知识。 首在修身养性,若能兼济他人,则善莫大焉。 本文首先通过一个表格识别的应用场景,举例说明PPStructure的基本应用,然后分析其内部实现时序,介绍相关类,为PPStructure的源码研究形成一个总体印象。 目录 1…

富格林:严厉打破欺诈实现安全

富格林认为&#xff0c;“磨刀不误砍柴工”这话在现货黄金交易市场中同样也适用&#xff0c;特别是近年来市场的避险情绪逐渐升温&#xff0c;人们对现货黄金的投资需求加大的情况下&#xff0c;严厉打破欺诈是我们能否确保交易安全的关键。富格林将给大家总结打破欺诈套路的小…

python爬虫基础

python 文章目录 python变量变量类型 输出运行程序 ctrlshiftf10命名规范&#xff1a;字母&#xff0c;数字&#xff0c;下划线 开头不能是数字注释&#xff1a; ctrl&#xff1f;字典 键key&#xff1a;值value修改字典的信息字典添加一个键值对字典删除一个键值对 实操案例--…

【最新华为OD机试E卷-支持在线评测】通过软盘拷贝文件(200分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试E卷,全、新、准,题目覆盖率达 95% 以上,支持…

美国洛杉矶ip有哪些独特优势

美国洛杉矶的IP地址独特优势主要体现在以下几个方面&#xff0c;rak小编为您整理发布美国洛杉矶的IP地址独特优势&#xff0c;希望 对您选择服务器有帮助。 1. 丰富的IP资源&#xff1a;美国洛杉矶多IP服务器提供的IP数量从几十到几百不等&#xff0c;最多可提供多达511个独立I…

dubbo 服务消费原理分析之应用级服务发现

文章目录 前言一、MigrationRuleListener1、迁移状态模型2、Provider 端升级3、Consumer 端升级4、服务消费选址5、MigrationRuleListener.onRefer6、MigrationRuleHandler.doMigrate6、MigrationRuleHandler.refreshInvoker7、MigrationClusterInvoker.migrateToApplicationFi…

LeetCode之图

200. 岛屿数量 class Solution {public int numIslands(char[][] grid) {int rows grid.length;int clolumns grid[0].length;if (grid null || rows 0) {return 0;}int numIsLands 0;for (int i 0; i < rows; i) {for (int j 0; j < clolumns; j) {if (grid[i][…

vue3+ant design vue实现表格导出(后端返回文件流类型导出)

1、之前的博客介绍了&#xff0c;依据页面展示的table表格数据为基础展示表格导出&#xff0c;今天介绍下后端返回文件流来实现表格导出。 <a-button class"btn" type"primary" click"exportData1">导出</a-button>import {ExportT…