2022 年合肥市经开区第七届青少年信息学竞赛 小学组试题题解

本文提供了2022年合肥市经开区第七届青少年信息学竞赛小学组的试题解析,包括四道题目:车辆统计、直角三角形、质因数和采摘苹果。详细解答了每一道编程题目,旨在帮助参赛者理解和解决算法问题。
摘要由CSDN通过智能技术生成

目录

第一题 车辆统计

第二题 直角三角形

第三题 质因数

第四题 采摘苹果


第一题 车辆统计

(car.cpp)
       国豪家的小区旁边有个 T 字型的路口。暑假的时候,国豪会坐到路口旁边的树荫下纳凉。有时候,他一遍纳凉,一遍会观察从路口驶过的汽车,他发现大部分司机都严格遵守交通规则,在绿灯的时候通过路口,还有一些司机会抢着黄灯冲过路口,这样做其实挺危险,更有甚者,有少部分司机会无视红灯的存在,直接闯红灯通过路口,看得国豪心惊肉跳。现在给出某段时间国豪观察的车辆通过情况,请你统计绿灯、黄灯、红灯三种情况下通过的车辆数。
输入:
由 green、yellow、red 三个单词构成的字符串,分别表示一辆车在
绿色、黄色、红色的交通灯下经过路口。
输出:
一行三个整数,表示绿灯、黄灯、红灯三种情况下通过的车辆数。
样例输入:
greengreenyellowgreenredgreenyellow
样例输出:
4 2 1
说明:
整个字符串有 4 个 green,2 个 yellow 和 1 个 red,说明有 4 辆车在
绿灯的情况下通过,有 2 辆车在黄灯的情况下通过,有 1 辆车在红灯
的情况下通过。
数据范围:
3<=字符串的长度<=10000
题解:
       本题主要考察字符串相关知识,因为green、yellow、red这3个字符串中,都有各自特有的字符,例如:green中的'g'和'n'、yellow中的’y‘、'l'、'w'、red中的'd',也就是说,输入的字符串中,只要出现了一个'g',就出现了一次"green",yellow和red同理。因此,我们只需要统计特殊字符出现的次数,分别用3个变量来计数,即可解出本题。
参考程序:
#include <iostream>
#include <cstring>
using namespace std;

string s;
int green=0,yellow=0,red=0;

int main(){
	//freopen("car.in","r",stdin);
	//freopen("car.out","w",stdout);
	
	cin>>s;
	for(int i=0;i<s.length();i++){
		//找出green、yellow、red各自的特有字符 
		switch(s[i]){
			case 'g':
				green++;
				break;
			case 'y':
				yellow++;
				break;
			case 'd':
				red++;
				break;
			default:
				continue;
		}
	}
	cout<<green<<" "<<yellow<<" "<<red<<endl;
	return 0;
}

第二题 直角三角形

(rt.cpp)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值