当前位置: 首页 > news >正文

CSDN编程竞赛-第六期(上)

CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16

努力是为了让自己不平庸:

前言/背景

四道题都是相关数组的,思路很好想,但是需要熟练使用,不能有小错误。

参赛流程

活动时间:9月8日-21日(竞赛时间截止9.18)

竞赛考试时间:9月18日 8:30-11:00(作答时间2小时)

获奖名单公布:9月23日,在本页面公布获奖名单链接

获奖用户信息收集:9月27日

奖品发放:9月30日后7个工作日内

参赛经历

早起,提前洗漱完毕,等待竞赛开始就直接进入

一、严查枪火

题目

X国最近开始严管枪火。 像是“ak”,“m4a1”,“skr”。都是明令禁止的。 现在小Q查获了一批违禁物品其中部分是枪支。 小Q想知道自己需要按照私藏枪火来关押多少人。 (只有以上三种枪被视为违法)

解题思路

先定义一个变量用于用于控制输入多少字符串,一个for循环将输入的字符串存入定义好的数组里,再用枚举法判断每一个字符串是否满足为“ak”或“m4a1”或“skr”,满足则计数加1,最后输出计数

代码

#include "stdio.h"
#include "string.h"

int main() {
	int n, count;
	scanf("%d", &n);
	char str[n][10];

	for (int i = 0; i < n; i++) {
		scanf("%s", &str[i]);
	}

	for (int j = 0; j < n; j++) {
		if (strcmp(str[j], "ak") == 0 || strcmp(str[j], "m4a1") == 0 || strcmp(str[j], "skr") == 0) {
			count++;
		}
	}

	printf("%d", count);
	return 0;
}

运行结果

二、鬼画符门

题目

鬼画符门,每年都会统计自己宗门鬼画符消耗的数量,往年一直是大师兄管理, 但是这次鬼艺接手了, 你能帮鬼艺写一个 程序统计每年消耗数量最多的鬼画符吗?

解题思路

本题考查的是找出数组中出现最多的元素并输出,可以用两个for循环计算每个元素在数组的个数然后放进一个数组里,对它们进行比大小,从而找到出现最多的索引。

代码

#include "stdio.h"
#include "string.h"

int main() {
	int n;
	scanf("%d", &n);
	char str[n][10];
	int count[n];

	for (int i = 0; i < n; i++) {
		scanf("%s", &str[i]);
	}

	for (int j = 0; j < n; j++) {
		for (int k = 0; k < n; k++) {
			if (strcmp(str[k], str[j]) == 0) {
				count[j]++;
			}
		}
	}

	int max = count[0];
	int m;

	for (int p = 0; p < n; p++) {
		if (max < count[p]) {
			max = count[p];
			m = p;
		}
	}

	printf("\n%s", str[m]);
	return 0;
}

执行结果

经验心得

要多多练习,多多刷题,熟练的使用算法。

总结

到饭点了,后两道题吃完饭更。

相关文章:

  • 基于 V2X 的车联网安全互信体系架构分析
  • 【图像检测】基于 AlexNet 和 SVM 实现异常螺母检测附matlab代码
  • vue开发-从源码开始解读一个智慧园区项目
  • 接入Twitter和Facebook分享踩坑记录
  • 这次主要的配置
  • 工作5年,没接触过高并发编程,这正常吗?
  • 【微信小程序】带你进入小程序的世界
  • 机器学习-线性回归 二维问题
  • 分享从零开始学习网络设备配置--2.1 交换机基本配置
  • 大数据ClickHouse进阶(九):ClickHouse的From和Sample子句
  • vue3 | HighCharts实战自定义封装之径向条形图
  • Web前端系列技术之Web APIs基础(从基础开始)③
  • 线段树基本操作——建树+单点修改+区间查询
  • python/php/java/nodejs通讯录管理系统vue+elementui
  • 【老生谈算法】matlab实现蒙特卡罗定积分源码——蒙特卡罗定积分
  • 【译】JS基础算法脚本:字符串结尾
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • Golang-长连接-状态推送
  • Mysql优化
  • Spring声明式事务管理之一:五大属性分析
  • 阿里云购买磁盘后挂载
  • 闭包--闭包之tab栏切换(四)
  • 关于使用markdown的方法(引自CSDN教程)
  • 力扣(LeetCode)56
  • 设计模式 开闭原则
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 微信公众号开发小记——5.python微信红包
  • 自动记录MySQL慢查询快照脚本
  • 关于Android全面屏虚拟导航栏的适配总结
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • #HarmonyOS:基础语法
  • #pragma once
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (javascript)再说document.body.scrollTop的使用问题
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (十一)c52学习之旅-动态数码管
  • (四)Controller接口控制器详解(三)
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET成年了,然后呢?
  • .NET使用存储过程实现对数据库的增删改查
  • @Data注解的作用
  • [ActionScript][AS3]小小笔记