首页 > 其他分享 >(PAT乙级刷题)擅长C

(PAT乙级刷题)擅长C

时间:2024-06-09 20:31:17浏览次数:21  
标签:... PAT .. int .... 乙级 CCCC word 刷题

题目:

 输入样式

..C..
.C.C.
C...C
CCCCC
C...C
C...C
C...C
CCCC.
C...C
C...C
CCCC.
C...C
C...C
CCCC.
.CCC.
C...C
C....
C....
C....
C...C
.CCC.
CCCC.
C...C
C...C
C...C
C...C
C...C
CCCC.
CCCCC
C....
C....
CCCC.
C....
C....
CCCCC
CCCCC
C....
C....
CCCC.
C....
C....
C....
CCCC.
C...C
C....
C.CCC
C...C
C...C
CCCC.
C...C
C...C
C...C
CCCCC
C...C
C...C
C...C
CCCCC
..C..
..C..
..C..
..C..
..C..
CCCCC
CCCCC
....C
....C
....C
....C
C...C
.CCC.
C...C
C..C.
C.C..
CC...
C.C..
C..C.
C...C
C....
C....
C....
C....
C....
C....
CCCCC
C...C
C...C
CC.CC
C.C.C
C...C
C...C
C...C
C...C
C...C
CC..C
C.C.C
C..CC
C...C
C...C
.CCC.
C...C
C...C
C...C
C...C
C...C
.CCC.
CCCC.
C...C
C...C
CCCC.
C....
C....
C....
.CCC.
C...C
C...C
C...C
C.C.C
C..CC
.CCC.
CCCC.
C...C
CCCC.
CC...
C.C..
C..C.
C...C
.CCC.
C...C
C....
.CCC.
....C
C...C
.CCC.
CCCCC
..C..
..C..
..C..
..C..
..C..
..C..
C...C
C...C
C...C
C...C
C...C
C...C
.CCC.
C...C
C...C
C...C
C...C
C...C
.C.C.
..C..
C...C
C...C
C...C
C.C.C
CC.CC
C...C
C...C
C...C
C...C
.C.C.
..C..
.C.C.
C...C
C...C
C...C
C...C
.C.C.
..C..
..C..
..C..
..C..
CCCCC
....C
...C.
..C..
.C...
C....
CCCCC
HELLO~WORLD!

题解:

#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main()
{
    string key;    //记录每行字符串
    vector<string>t;    //记录全部
    string word;    //要输出的句子
    //初始化
    for (int i = 0; i < 26; i++)    //字母数量
    {
        for (int j = 0; j < 7; j++)    //一个字母由7行字符串组成
        {
            cin >> key;
            t.push_back(key);
        }
    }
    getline(cin, word);    //获取回车
    getline(cin, word);
    //选出单词
    string word_p;    //筛选出单词
    //去除前面的多余字符
    for (int i = 0; i < word.size(); i++)
    {
        if (isupper(word[i]))
        {
            word = word.substr(i);
            break;
        }
    }
    vector<string>p;    //存储单词
    for (int i = 0; i < (int)word.size();i++)
    {
        //只输出字母
        if (isupper(word[i]))
        {
            word_p += word[i];
        }
        //遇到不符合的字符则找出了一个单词
        if (!isupper(word[i]) || i == (int)word.size() - 1)
        {
            p.push_back(word_p);
            word_p.clear();   //清空
            //跳过多余字符
            while (!isupper(word[i+1]) && i+1 < (int)word.size())
            {
                i++;
            }
        }
    }
    //输出
    for (int i = 0; i < (int)p.size(); i++)  //单词数
    {
        for (int j = 0; j < 7; j++) //控制单词的每一行
        {
            int count = 0;
            for (int k = 0; k < (int)p[i].size(); k++) //控制一行中每个字母的部分输出
            {
                count++;
                //第一个单词前没有空格
                if (count != 1)
                {
                    cout << ' ';
                }
                cout << t[(p[i][k] - 'A') * 7 + j];
            }
            cout << endl;
        }
        if (i != (int)p.size() - 1)
        {
            cout << endl;
        }
    }
    return 0;
}

标签:...,PAT,..,int,....,乙级,CCCC,word,刷题
From: https://blog.csdn.net/2301_79580018/article/details/139564069

相关文章

  • 简单工厂模式( Simple Factory Pattern )
    简单工厂模式(SimpleFactoryPattern),在工厂类中对象决定创建出哪一种产品类的实例。这些产品类都实现了相同的接口,或者继承了相同的父类。结构图Factory(工厂角色):它是核心,负责实现创建所有实例的内部逻辑。在工厂类中,提供了一个静态方法,可以直接被外界直接调用,以创建具体产品......
  • 打卡信奥刷题(70)用Scratch图形化工具信奥P1149 [NOIP2008 提高组] 火柴棒等式
    [NOIP2008提高组]火柴棒等式题目描述给你nnn根火柴棍,你可以拼出多少个形如A+......
  • 打卡信奥刷题(67)用Scratch图形化工具信奥P1125 [NOIP2008 提高组] 笨小猴,写了一个好用
    [NOIP2008提高组]笨小猴题目描述笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!这种方法的具体描述如下:假设maxn......
  • pageContext.request.contextpath、getServletContext.getRealPath(““)、request.ge
    在JavaEE(JavaEnterpriseEdition)中开发Web应用时,开发者常常需要获取Web应用的上下文路径和服务器上文件的真实路径。以下是对pageContext.request.contextPath、getServletContext().getRealPath("")和request.getContextPath()的详细解释及它们之间的区别:1.pageContext......
  • 华为OD刷题C卷 - 每日刷题 16(连续字母长度,拼接URL)
    两段代码分别解决了两个不同的字符串处理问题,下面是对它们的概述:1、(连续字母长度):这段代码是解决“连续字母长度”的问题。它提供了一个Java类Main,其中包含main方法和getResult方法,用于找出给定字符串中,按相同字母的最长连续子串长度排序后的第k长的子串的长度。main方法......
  • 华为OD刷题C卷 - 每日刷题 17(字符串序列判定,最长的指定瑕疵度的元音子串)
    1、(字符串序列判定):这段代码是解决“字符串序列判定”的问题。它提供了一个Java类Main,其中包含main方法和getResult方法,用于判断字符串S是否是字符串L的有效子串。main方法首先读取两个字符串S和L,然后调用getResult方法并打印最后一个有效字符在L中的位置。getResult方法......
  • 华为OD刷题C卷 - 每日刷题 13(图像物体的边界,英文输入法)
    1、(图像物体的边界):这段代码是解决“图像物体的边界”的问题。它提供了一个Java类Main,其中包含main方法和getResult方法,以及一个内部UnionFindSet类,用于计算像素1代表的物体的边界个数。main方法首先读取二维数组的行数m和列数n,然后读取二维数组matrix中的像素值。接着,调用......
  • 华为OD刷题C卷 - 每日刷题 8(整形数组按个位值排序,停车场车辆统计)
    两段代码分别解决了两个不同的算法问题,下面是对它们的概述:1、(整形数组按个位值排序):这段代码是解决“整形数组按个位值排序”的问题。它提供了一个Java类Main,其中包含main方法,用于读取输入、执行排序并打印结果。代码首先使用Scanner从标准输入读取一行文本,该文本包含一个......
  • (PAT乙级刷题)String复读机
    题目:题解:#include<iostream>#include<map>usingnamespacestd;map<char,int>mp;intmain(){stringkey="String";stringt;cin>>t;//记录字符数量for(inti=0;i<t.size();i++){mp[......
  • 设计模式:命令模式(Command Pattern)及实例
     好家伙, 0.什么是命令模式在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象......