首页 > 编程语言 >C++:PTA L1-086 斯德哥尔摩火车上的题

C++:PTA L1-086 斯德哥尔摩火车上的题

时间:2025-01-19 22:30:16浏览次数:3  
标签:输出 样例 086 C++ 斯德哥尔摩 PTA 112358 字符串 include

L1-086 斯德哥尔摩火车上的题

tt.png

上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码:

s = ''
a = '1112031584'
for (i = 1; i < length(a); i++) {
  if (a[i] % 2 == a[i-1] % 2) {
    s += max(a[i], a[i-1])
  }
}
goto_url('www.multisoft.se/' + s)

其中字符串的 + 操作是连接两个字符串的意思。所以这道题其实是让大家访问网站 www.multisoft.se/112358注意:比赛中千万不要访问这个网址!!!)。

当然,能通过上述算法得到 112358 的原始字符串 a 是不唯一的。本题就请你判断,两个给定的原始字符串,能否通过上述算法得到相同的输出?

输入格式:

输入为两行仅由数字组成的非空字符串,长度均不超过 104,以回车结束。

输出格式:

对两个字符串分别采用上述斯德哥尔摩火车上的算法进行处理。如果两个结果是一样的,则在一行中输出那个结果;否则分别输出各自对应的处理结果,每个占一行。题目保证输出结果不为空。

输入样例 1:

1112031584
011102315849

输出样例 1:

112358

输入样例 2:

111203158412334
12341112031584

输出样例 2:

1123583
112358

代码: 

#include<stdio.h>
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
   string a,b,a2="",b2="";
    cin>>a;
    cin>>b;
    for(int i=1;i<a.size();i++){
        if(a[i]%2==a[i-1]%2){
            a2+=max(a[i],a[i-1]);
        }
    }
    for(int i=1;i<b.size();i++){
        if(b[i]%2==b[i-1]%2){
            b2+=max(b[i],b[i-1]);
        }
    }
    if(a2==b2)cout<<a2<<endl;
    else{
        cout<<a2<<endl<<b2<<endl;
    }
	return 0;
} 

 

标签:输出,样例,086,C++,斯德哥尔摩,PTA,112358,字符串,include
From: https://blog.csdn.net/crescent_yue/article/details/145249112

相关文章

  • C++,设计模式,【目录篇】
    文章目录1.简介2.设计模式的分类2.1创建型模式(CreationalPatterns):2.2结构型模式(StructuralPatterns):2.3行为型模式(BehavioralPatterns):3.使用设计模式的好处参考1.简介设计模式(DesignPatterns)是软件工程中针对常见问题的可重用解决方案。它们不是具体的......
  • Lake Counting(c++)
     AC代码:#include<iostream>usingnamespacestd;chara[105][105];intn,m,cnt;intdx[]={-1,-1,-1,0,1,1,1,0},dy[]={-1,0,1,1,1,0,-1,-1};voiddfs(intx,inty){ a[x][y]='.'; for(inti=0;i<8;i++){ inttx=x+dx[i],ty=y+dy[i]; if(......
  • 7-50 三天打鱼两天晒网PTA
    中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式:输入在一行中给出一个不超过1000的正整数N。输出格式:在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并......
  • 7-51 输出三角形面积和周长PTA
    本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中,任意两边之和大于第三边。三角形面积计算公式:area=s(s−a)(s−b)(s−c)​,其中s=(a+b+c)/2。输入格式:输入为3个正整数,分别代表三角形的3条边a、b、c。输出格式:如果输入的边能构成......
  • 现代C++软件架构--架构风格
    架构风格有状态风格和无状态风格有状态软件的行为依赖于其内部状态。我们以Web服务为例,如果服务记住了自己的状态,该服务的使用者可以在每个请求中发送更少的数据,因为该服务记住了这些请求的上下文。然而,虽然节省了发送请求大小和带宽数据的开销,但在Web服务方面有一项隐藏......
  • 指针应用-查找数组元素(PTA)C语言
    编写一个名为findX的函数,该函数的参数p指向一个int数组,数组的容量n由参数2指定。在该数组中,查找数据x所在的位置。如果数据x有出现多次,则返回其最后一次出现的位置对应的下标。如果没有找到,则固定返回-2。intfindX(int*p,intn,intx);函数接口定义:intfindX(int*p,intn......
  • 【C++】一个完整的位姿(Pose)计算系统,主要用于处理三维空间中的坐标系变换
    1.旋转矩阵计算给定旋转角度(RX=ϕRX=\phiRX=ϕ)、(......
  • 《 C++ 点滴漫谈: 二十一 》sizeof 不止是大小:C++ 高效编程背后的核心
    摘要sizeof关键字是C++中的重要工具,用于在编译期确定类型或对象的大小。本文全面解析了sizeof的基本概念、常见用途以及底层实现原理,帮助开发者更好地理解其在内存管理、数据对齐和性能优化中的作用。此外,文章还对sizeof和C++11引入的alignof的关系进行了探讨,并......
  • 【华为OD-E卷 - 第k个排列 100分(python、java、c++、js、c)】
    【华为OD-E卷-第k个排列100分(python、java、c++、js、c)】题目给定参数n,从1到n会有n个整数:1,2,3,…,n,这n个数字共有n!种排列。按大小顺序升序列出所有排列的情况,并一一标记,当n=3时,所有排列如下:“123”“132”“213”“231”“312”“321”给......
  • C++转型操作符 VS 强制类型转换:为何前者更胜一筹?
    C++中的类型转换操作一、C++转型操作符的种类及用途1.1static_cast主要用途:进行隐式类型转换,如将int转换为float,或指针转换为void*。调用显式或隐式的转换函数,可增加代码可读性。在继承体系中进行类型转换:向上转换(派生类到基类)通常是安全的隐式转换,无需......