【算法学习记录-散列】【PAT B1043】输出PATest

作者:神秘网友 发布时间:2021-01-25 13:51:47

【算法学习记录-散列】【PAT B1043】输出PATest

给定一个长度不超过1的、仅由英文字母构成的字符串。请将字符重新调整顺序,按PATestPATest....这样的顺序输出,并忽略其它字符。当然,六种字符的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按 PATest 的顺序打印,直到所有字符都被输出。

输入格式:

输入在一行中给出一个长度不超过1的、仅由英文字母构成的非空字符串。

输出格式:

在一行中按题目要求输出排序后的字符串。题目保证输出非空。

输入样例:

redlesPayBestPATTopTeePHPereatitAPPT

输出样例:

PATestPATestPTetPTePePee


思路:

0、乍一看会被题目描述的“请将字符串调整顺序”“忽略其他字符”“请按PATest顺序输出”“六种字符个数不一”吓到,其实这题比之前的散列题都要简单的多

1、整体思路

以arr[6]统计6种字符出现的次数,再while循环,按PATest顺序输出,每输出一个字符arr[i]--,减到0时停止该字符的输出

2、题解代码

 1 #include<cstdio>
 2 #include<iostream>
 3 #include<cstring>
 4 using namespace std;
 5 
 6 int main() {
 7     
 8     int arr[6];
 9     for (int i = 0; i < 6; i++) {
10         arr[i] = 0;
11     }
12     
13     char str[10010];
14     cin>>str;
15     int len = strlen(str);
16     for (int i = 0; i < len; i++) {
17         if (str[i] == 'P') {
18             arr[0]++;
19         } else     if (str[i] == 'A') {
20             arr[1]++;
21         } else     if (str[i] == 'T') {
22             arr[2]++;
23         } else     if (str[i] == 'e') {
24             arr[3]++;
25         } else     if (str[i] == 's') {
26             arr[4]++;
27         } else     if (str[i] == 't') {
28             arr[5]++;
29         }
30     }
31     
32     while (arr[0] != 0 || arr[1] != 0 || arr[2] != 0 || arr[3] != 0 || arr[4] != 0 || arr[5] != 0) {
33         if (arr[0] != 0) {
34             printf("P");
35             arr[0]--;
36         }
37         if (arr[1] != 0) {
38             printf("A");
39             arr[1]--;
40         }
41         if (arr[2] != 0) {
42             printf("T");
43             arr[2]--;
44         }
45         if (arr[3] != 0) {
46             printf("e");
47             arr[3]--;
48         }
49         if (arr[4] != 0) {
50             printf("s");
51             arr[4]--;
52         }
53         if (arr[5] != 0) {
54             printf("t");
55             arr[5]--;
56         }
57     }
58     
59     return 0;
60 }

【算法学习记录-散列】【PAT B1043】输出PATest 相关文章

  1. Python深度学习笔记09--使用Keras建立循环神经网络

    6.2 理解循环神经网络 6.2.1 Keras中的循环层: 1 from keras.layers import SimpleRNN 2 3 from keras.models import Sequential 4 from keras.layers import Embedding, SimpleRNN 5 6 model = Sequential() 7 model.add(Embedding(10000, 32)) 8 model.ad

  2. hologres使用记录

    1.hologres相关概念 Hologres是阿里巴巴自主研发的一款交互式分析产品,兼容PostgreSQL 11协议,与大数据生态无缝连接,支持高并发和低延时地分析处理PB级数据。 功能: 1)加速查询MaxCompute数据 Hologres与MaxCompute在底层无缝连接,您无须移动数据,即

  3. 2020ASE-课程总结

    围绕课程理论学习和课程项目实践,总结自己的学习心得体会,整理自己的收获。 在课程之初,正式开始项目之前,写了这门课的第一篇博客——期望与笃信;对自己进行了简单的剖析并提出了自己的目标以及方案计划;总结起来就是,寻求三个方面能力的提升 团队协

  4. 替罪羊树学习笔记

    Part 0 引子 我们都知道,有一种东西叫 BST。 我们都知道,BST 在极限数据会卡爆。 我们都知道,为了让 BST 不被卡,有很多种平衡树。 但你知道有一种平衡树好写速度快吗那就是替罪羊树。 Part 1 替罪羊树平衡的原理 替罪羊树是一种平衡树,一种平衡的 BST。

  5. Python深度学习笔记08--处理文本数据的常用方法

    6.1 处理文本数据 6.1.1 单词和字符的one-hot编码 (1)单词级的one-hot编码: 1 # 单词级的one-hot编码 2 import numpy as np 3 4 # 初始数据:每个样本是列表的一个元素(本例中的样本是一个句子,但也可以是一整篇文档) 5 samples = ['The cat sat on the ma

  6. 图机器学习有多大神力一文带你回顾2020展望2021

    编辑:keyu 来源:新智元 【导读】 近两年,图机器学习可谓是机器学习研究领域的新星,随着模型的更新和应用的推广,越来越多的人开始把注意力转向了这一方向。过去一年中,图机器学习在哪方面有突破呢,在未来的一年中,哪些分支和方向会成为新的研究趋势呢

  7. 综述:图像滤波常用算法实现及原理解析

    前言 本文介绍四种常见的图像滤波算法,并附上源码。图像滤波是一种非常重要的图像处理技术,现在大火的卷积神经网络其实也是滤波的一种,都是用卷积核去提取图像的特征模式。不过,传统的滤波,使用的卷积核是固定的参数,是由经验非常丰富的人去手动设计的

  8. STL源码剖析-容器priority_queue-heap(算法)

    heap heap的实现就是数据结构中的 堆 (大顶堆、小顶堆)。STL提供 max-heap 。 STL中并没有把 heap 作为一种容器组件,heap的实现亦需要更低一层的容器组件,诸如list,array,vector。heap并不属于STL容器,但它是其中一个容器 priority queue 必不可少的

  9. 字符串学习

    跟着老师视频看字符串的时候出现一个问题; gets();函数已经被弃用了;导致编译器无法识别它。 gets() 函数在ISO/IEC 9899 2011(C11)标准中被移除, 用一个新的更安全的函数gets_s()替代; 不得不说互联网技术真的永无止境的前进嗯。 #includeiostreamusing

  10. JUnit学习笔记

    junit学习笔记 不影响原有类的情况下,生成测试类。 IDEA下载插件 插件名字为JUnitGeneratorV2.0 方法 Setting选项中的Plugins里搜索下载 Setting选项中的JUnnit Generator中的Output Path配置测试类存放位置 ${SOURCEPATH}/../test/${PACKAGE}/${FILENAME}

每天更新java,php,javaScript,go,python,nodejs,vue,android,mysql等相关技术教程,教程由网友分享而来,欢迎大家分享IT技术教程到本站,帮助自己同时也帮助他人!

Copyright 2020, All Rights Reserved. Powered by 跳墙网(www.tqwba.com)|网站地图|关键词