pta上的几个例题

2024-03-16 23:52
文章标签 几个 例题 pta

本文主要是介绍pta上的几个例题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

9efbcbc3d25747719da38c01b3fa9b4f.gif

 c语言中的小小白-CSDN博客c语言中的小小白关注算法,c++,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm=1001.2014.3001.5343

给大家分享一句我很喜欢我话:

知不足而奋进,望远山而前行!!!

铁铁们,成功的路上必然是孤独且艰难的,但是我们不可以放弃,远山就在前方,但我们能力仍然不足,所有我们更要奋进前行!!!

今天我们更新了xxxxxxx内容,

🎉 欢迎大家关注🔍点赞👍收藏⭐️留言📝

一、题目一

这张图片是前几年微博上很火的一张图片,下面我们来看一下题目:

这里便是题目的描述和要求:下面我们来看一下这道题的代码:

#include<iostream>
#include<set>
#include<cstring>;
using namespace std;int main()
{char tele[20];cin >> tele;set<int, greater<int>> numbers;int len = strlen(tele);for (int i = 0; i < len; i++){numbers.insert(tele[i] - '0');}int len2 = numbers.size();int arr[12];for (int i = 0; i < len; i++){int count = 0;for (int j:numbers){if ((tele[i] - '0') == j){arr[i] = count;break;}count++;}}cout << "int[] arr = new int[]{";int a = 0;for (int i : numbers){if (a != 0)cout << "," << i;else cout << i;a++;}cout << "};"<<endl;cout << "int[] index = new int[]{";for (int i = 0; i < len; i++){if (i != 0)cout << "," << arr[i];else cout << arr[i];}cout << "};";return 0;
}

二、题目二

再来看一下这道题,看似是简单的A+B,实则不然,输入的数不一定是整数,可能是字母,或者其他的什么东西,所以看一下代码吧:

#include<iostream>
#include<cstring>int is_integer(const char* ptr)
{int len = strlen(ptr);int all = 0;if (len > 4)return -1;else {for (int i = 0; i < len; i++){if (ptr[i] >= '0' && ptr[i] <= '9'){all *= 10;all += (ptr[i] - '0');}else {return -1; }}}if (all < 1 || all>1000)return -1;else return all;}int main()
{char arr[100] = { 0 };char str[100] = { 0 };std::cin >> arr;std::cin.ignore();std::cin.getline(str, 100);int ret1 = is_integer(arr);int ret2 = is_integer(str);if (ret1 == -1 && ret2 == -1){std::cout << "? + ? = ?";}else if (ret1 == -1 && ret2 != -1){std::cout << "? + " << ret2 << " = ?";}else if (ret1 != -1 && ret2 == -1){std::cout << ret1 << " + ? = ?";}else if (ret1 != -1 && ret2 != -1){std::cout << ret1 << " + " << ret2 << " = " << ret1 + ret2;}return 0;
}

三、题目三

下面是代码:

#include<iostream>
#include<set>using namespace std;
int main()
{    int n=0;    cin>>n;    set<int> no_handsome;    for(int i=0;i<n;i++)    {        int k=0;        cin>>k;        for(int j=0;j<k;j++)        {            int temp=0;            cin>>temp;            if(k>1)            {                no_handsome.insert(temp);            }           }    }    int m=0;    cin>>m;     set<int> handsome;    bool flag=true;    for(int i=0;i<m;i++)    {        int temp;        cin>>temp;        if(no_handsome.find(temp)==no_handsome.end())        {            if(handsome.find(temp)==handsome.end())            {                if(!flag)                {                    cout<<" ";                }                printf("%05d",temp);                flag=false;            }            handsome.insert(temp);        }    }    if(handsome.size()==0)    {        cout<<"No one is handsome";    }
}

总结:

这三个题整体难度其实不大,但是很容易做错,所以各位好好看一下吧

这篇关于pta上的几个例题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/817160

相关文章

每天认识几个maven依赖(ActiveMQ+activemq-jaxb+activesoap+activespace+adarwin)

八、ActiveMQ 1、是什么? ActiveMQ 是一个开源的消息中间件(Message Broker),由 Apache 软件基金会开发和维护。它实现了 Java 消息服务(Java Message Service, JMS)规范,并支持多种消息传递协议,包括 AMQP、MQTT 和 OpenWire 等。 2、有什么用? 可靠性:ActiveMQ 提供了消息持久性和事务支持,确保消

uva 10061 How many zero's and how many digits ?(不同进制阶乘末尾几个0)+poj 1401

题意是求在base进制下的 n!的结果有几位数,末尾有几个0。 想起刚开始的时候做的一道10进制下的n阶乘末尾有几个零,以及之前有做过的一道n阶乘的位数。 当时都是在10进制下的。 10进制下的做法是: 1. n阶位数:直接 lg(n!)就是得数的位数。 2. n阶末尾0的个数:由于2 * 5 将会在得数中以0的形式存在,所以计算2或者计算5,由于因子中出现5必然出现2,所以直接一

PTA求一批整数中出现最多的个位数字

作者 徐镜春 单位 浙江大学 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n

使用JS/Jquery获得父窗口的几个方法(笔记)

<pre name="code" class="javascript">取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);如题: $(selector, window.top.document);//获得顶级窗口里面的元素 $(

Verybot的几个视频

1、Verybot的运动控制                 http://v.youku.com/v_show/id_XNjYxNjg4MTM2.html           2、Verybot比较初步的网络视频监控           http://v.youku.com/v_show/id_XNjYxNjkyMjg0.html           3、V

PHP原理之内存管理中难懂的几个点

PHP的内存管理, 分为俩大部分, 第一部分是PHP自身的内存管理, 这部分主要的内容就是引用计数, 写时复制, 等等面向应用的层面的管理. 而第二部分就是今天我要介绍的, zend_alloc中描写的关于PHP自身的内存管理, 包括它是如何管理可用内存, 如何分配内存等. 另外, 为什么要写这个呢, 因为之前并没有任何资料来介绍PHP内存管理中使用的策略, 数据结构, 或者算法. 而在我们

Java虚拟机垃圾回收的几个关键问题

20151008 GC的几个关键问题,触发条件,触发的机制 主线是数据的移动,从什么位置到什么位置,移动的条件是什么? 1 垃圾收集在什么时候触发? GC都是在带满了的时候触发的,每次触发都是把不会用的不可达的对象空间回收了,留下还在用的对象。 1) MinorGC的触发是伊甸园空间满的时候 2) FullGC的触发是在老年代满的时候 2 垃圾回收的时候做哪些工作? 1) 一个新的对象new出

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

正规式与有限自动机例题

答案:D 知识点: 正规式 正规集 举例 ab 字符串ab构成的集合 {ab} a|b 字符串a,b构成的集合 {a,b} a^* 由0或者多个a构成的字符串集合 {空,a,aa,aaa,aaaa····} (a|b)^* 所有字符a和b构成的串的集合 {空,a,b,ab,aab,aba,aaab····} a(a|b)^* 以a为首字符的a,b字符串的集

算法练习小技巧之有序集合--套路详细解析带例题(leetcode)

前言:         本文详细讲解Python中的有序集合SortedList和C++中的有序集合multiset的用法,配合leetcode的例题来展示实际的用处。(本人水平不够,还无法讲解有序集合的实现方法,只会用)         觉得有帮助或者写的不错可以点个赞,后面也有几道我找出来的题目可以用这个方法快速解决的         (感觉有点水) 目录 有序集合用法讲解: