当前位置: 首页 > news >正文

传奇手游开服表网站无锡seo公司

传奇手游开服表网站,无锡seo公司,淘宝客cms网站怎么做,上海市人民政府门户网站目录 题目描述: 示例1 代码实现: 【华为OD】B\C卷真题 100%通过:字符串统计 C/C实现 题目描述: 给定两个字符集合,一个为全量字符集,一个为已占用字符集。已占用的字符集中的字符不能再使用,要求输出剩…

目录

题目描述:

示例1

代码实现:


【华为OD】B\C卷真题 100%通过:字符串统计 C/C++实现

题目描述:

给定两个字符集合,一个为全量字符集,一个为已占用字符集。已占用的字符集中的字符不能再使用,要求输出剩余可用字符集。

输入描述

1、输入为一个字符串,一定包含@符号。@前的为全量字符集,@后的字为已占用字符集。

2、已占用字符集中的字符一定是全量字符集中的字符。字符集中的字符跟字符之间使用英文逗号分隔。

3、每个字符都表示为字符加数字的形式,用英文冒号分隔,比如a:1,表示1个a字符。

4、字符只考虑英文字母,区分大小写,数字只考虑正整形,数量不超过100。

5、如果一个字符都没被占用,@标识仍然存在,例如a:3,b:5,c:2@

输出描述

输出可用字符集,不同的输出字符集之间回车换行。

注意,输出的字符顺序要跟输入一致。不能输出b:3,a:2,c:2

如果某个字符已全被占用,不需要再输出。

示例1

输入输出示例仅供调试,后台判题数据一般不包含示例

输入

a:3,b:5,c:2@a:1,b:2

输出

a:2,b:3,c:2

说明

全量字符集为3个a,5个b,2个c。

已占用字符集为1个a,2个b。

由于已占用字符不能再使用,因此,剩余可用字符为2个a,3个b,2个c。

因此输出a:2,b:3,c:2

代码实现:

#include <string>
#include <map>
#include <iostream>
#include <sstream>
#include <algorithm>
#include <vector>using namespace std;class SData {
public:char k;int cnt;int size;bool operator<(const SData &other) const {return size < other.size;}SData(char key = 0, int cnt = 0, int len = 0) : k(key), cnt(cnt), size(len) {}
};class Solution {public:Solution(const string &s) {int idx = s.find('@');if (idx == string::npos) {dealData(s, false);}else {dealData(s.substr(0, idx), false);dealData(s.substr(idx + 1), true);}vector<SData> tmp(m_data.size());m_vsd = tmp;for (auto &item : m_data) {m_vsd.push_back(item.second);}calc();}string out() const {return m_res;}
private:void calc() {sort(m_vsd.begin(), m_vsd.end());for (auto &e : m_vsd) {if (e.cnt > 0) {m_res.push_back(e.k);m_res.append(":").append(to_string(e.cnt)).append(",");}}m_res.pop_back();}void dealData(const string &s, bool fg) {if (s.empty()) {return;}istringstream ss(s);int size = 0, cnt;char k;while (ss >> k >> cnt) {if (fg) {m_data[k].cnt -= cnt;}else {m_data[k] = { k, cnt, size++ };}}}vector<SData> m_vsd;string m_res;map<char, SData> m_data;
};int main() {string lineStr;getline(cin, lineStr);replace_if(lineStr.begin(), lineStr.end(), [](char c) { return c == ':' || c == ','; }, ' ');Solution so(lineStr);cout << so.out() << endl;return 0;
}

http://www.hrbkazy.com/news/54058.html

相关文章:

  • 建设银行网站用户名怎么查百度关键词排名优化
  • 亚马逊网站建设评述深圳网站开发制作
  • 中国旅游网站排名10条重大新闻事件
  • 纸做的花朵成品网站短视频营销常用平台有
  • 网站推广 知乎如何免费推广一个网站
  • 百斯特网站建设seo教程有什么
  • 网站设计模板下载如何做网站
  • 哪有网站给光头强做面广州快速排名
  • 济南网站建设 历山北路推广方法有哪几种
  • 注销网站 注销主体郑州seo代理外包
  • 商丘网站公司关键词优化百家号
  • 河南新闻联播网站做优化好还是推广好
  • 校园网的规划与设计seo网站seo
  • 永州市建设网站打开百度网站首页
  • 个人作品集网站是怎么做有没有专门帮人推广的公司
  • wordpress文章到qq群手机优化大师下载
  • wordpress域名防封插件seo研究中心怎么了
  • 网站建设有关模板广州竞价托管公司
  • 网站m3u8链接视频怎么做的站长统计app软件下载
  • sublime怎么做网站seo网站关键词排名优化公司
  • 如何做的网站排第一杭州网站seo推广软件
  • 在境外做色情网站网络推广公司排名
  • 自网站EXCel数据导入怎么做宁波seo免费优化软件
  • 做翻译赚钱的网站网络营销的四大特点
  • 泉州手机模板建站短视频seo营销
  • 网站所有权包括营销型网站有哪些
  • 公众号登录不上安徽seo报价
  • 北京网站建设公司费用郑州网站推广报价
  • 网页开发者模式怎么打开公司官网优化方案
  • shopex网站首页空白国际足联世界排名