程序设计天梯赛 L1-6 斯德哥尔摩火车上的题分数 15
上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码:
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
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
方法一
# include <stdio.h>
# include <string.h>
# define N 10001 //1~10001;
/*这个宏定义牵连着后三个测试点 如果定义为 # define N 10000
输入格式:
输入为两行仅由数字组成的非空字符串,长度均不超过 10^4
所以下标10000还是可取值,所以定义为10001
*/void suanfa(char *ot, char *tf);//前者接收输入值,后者接收待处理值; int main(void){//输入格式char one[N], two[N];char three[N] = "", four[N] = ""; //输出的值; gets(one);gets(two); suanfa(three, one); //这里传递的是One是数组的首地址 suanfa(four, two);puts(three);if(strcmp(three,four) != 0){puts(four);}return 0;
}//前者是为了给空数组赋值, 后者用来计算;
void suanfa(char *tf, char *ot){ for(int i=1, j=0; ot[i] != '\0'; i++){if (ot[i] % 2 == ot[i-1] % 2){ //避免索引值出现越界下标-1, 也可以只是尽量避免这种写法 tf[j] = (ot[i] > ot[i-1]) ? ot[i] : ot[i-1];j++;}}
}
方法二
# include <stdio.h>
# include <string.h>
# define N 10001 void suanfa(char *ot, char *tf);int main(void){char one[N], two[N];char three[N] = "", four[N] = ""; gets(one);gets(two); suanfa(three, one+1); //这个是为了被调函数中拥有下标-1; suanfa(four, two+1);puts(three);if(strcmp(three,four) != 0){puts(four);}return 0;
}//前者是为了给空数组赋值, 后者用来计算;
void suanfa(char *tf, char *ot){ while(*ot != '\0'){if((ot[0]-ot[-1]) % 2 == 0) //由于传过来的是索引位置为1时开始的,//所以此时这里的下标0代表主函数数组下标为1,-1代表主函数下标为0的值; {*tf = (ot[0] > ot[-1]) ? ot[0] : ot[-1];tf++; }ot++;}
}
有什么疑问请留言,加油
程序设计天梯赛 L1-6 斯德哥尔摩火车上的题分数 15相关推荐
- 【Java】2022年团体程序设计天梯赛 L1 和 L2-042 题解
今天我要赢 2018 年我们曾经出过一题,是输出"2018 我们要赢".今年是 2022 年,你要输出的句子变成了"我要赢!就在今天!"然后以比赛当天的日期落款 ...
- 2022GPLT团体程序设计天梯赛L1-086 斯德哥尔摩火车上的题
上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码: s = '' a = '1112031584' for (i = 1; i < length(a); i++) { ...
- 2022天梯赛 L1-086 斯德哥尔摩火车上的题
上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码: s = '' a = '1112031584' for (i = 1; i < length(a); i++) { ...
- 2020年团体程序设计天梯赛L1题目集(题目+代码)
2020年11月团体程序设计天梯赛 第一次参加天梯赛,除了在门口冻得瑟瑟发抖,还有按不动的shift之外一切都还好- tip:不知道啥原因代码上基本没有注释,希望dalao们不要介意~ L1-1 嫑废 ...
- L1-086 斯德哥尔摩火车上的题
上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码: s = '' a = '1112031584' for (i = 1; i < length(a); i++) { ...
- L1-6 斯德哥尔摩火车上的题
上图是新浪微博上的一则趣闻,是瑞典斯德哥尔摩火车上的一道题,看上去是段伪代码: s = '' a = '1112031584' for (i = 1; i < length(a); i++) { ...
- 团体程序设计天梯赛-L1练习集
目录 L1-002 打印沙漏 (20 分) 输入格式: 输出格式: 输入样例: 输出样例: L1-006 连续因子 (20 分) 输入格式: 输出格式: 输入样例: 输出样例: L1-009 N个数求 ...
- python 团体程序设计天梯赛L1合集(持续更新)
试题列表 L1-001 Hello World L1-002 打印沙漏 L1-003 个位数统计 L1-004 计算摄氏温度 L1-005 考试座位号 L1-006 连续因子 L1-007 念数字 L ...
- 第六届团体程序设计天梯赛L1题目总结
一.编码技巧总结 1.C/C++万能头文件 #include <bits/stdc++.h> using namespace std; 2.int型数据上限:2*10^9 3.读小数能用 ...
最新文章
- 在Linux平台上如何使用接静态库和共享库
- 架构师之路 — 数据库设计 — 关系型数据库的外键约束与关联
- [ Android 五种数据存储方式之二 ] —— 文件存储数据
- [MAC] Mac OS X下快速复制文件路径的方法
- 九度 1545:奇怪的连通图
- 一个XAP中有多个Silverlight控件时如何选择调用
- thaiphoon burner 使用_果粉请注意,苹果iPhone 12在日常使用时有两大隐忧
- 云小课 | 华为云KYON之ELB混合负载均衡
- 因改变,赢未来!三星Galaxy重磅新品年后首发!
- 单位阶跃信号是周期信号吗_iPhone12的信号有改观吗?
- 《圈圈教你玩USB》 第三章 USB鼠标的实现——看书笔记( 3 )
- 2008服务器怎么建网站,2008系统快速搭建网站教程
- 【NLP】形式语言与自动机
- 中国电信物联网平台入门学习笔记7:NB-IOT信号如何检测
- 区块链知识转载博文1: 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)
- hp计算机如何重装win7,惠普笔记本重装Win7系统过程详解
- learn git branching
- 消防工程师知识点:规范中关于高差10米的规定汇总(附带练习题)众智博睿
- 【CV-表情识别】如何衡量面部表情丰富性?
- 基于GIS、、geosever插件实现当地旅游资源网格化管理系统的架构
热门文章
- Xcode8/iOS10 升级后遇到的问题小结
- 如何找回bilibili(b站)收藏夹里失效的视频?
- 解决win2019安装.net3.5的问题,亲测可行(未成功启用报错,找不到源文件报错,统统解决。。)
- 水管工游戏——dfs
- 怎样用计算机打出错字,电脑键盘打字错乱的解决方法-电脑打不出字怎么办
- VScode淡绿色护眼设置
- FIL在十月份的ICO流通减产
- VB.NET学习笔记:使用Random类生成随机数(不重复、数字、字母)
- 数字图像处理中实现放缩图像的各种内插法
- matlab中strvcat函数,matlab 函数手册大全(3)