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

百马百担c语言编程

以下是一个百马百担问题的C语言编程实现:

  1. #include <stdio.h>
  2. int main() {
  3.     int n, m, k;
  4.     scanf("%d%d%d", &n, &m, &k);
  5.     int a[n], b[m], c[k];
  6.     for (int i = 0; i < n; i++) {
  7.         scanf("%d", &a[i]);
  8.     }
  9.     for (int i = 0; i < m; i++) {
  10.         scanf("%d", &b[i]);
  11.     }
  12.     for (int i = 0; i < k; i++) {
  13.         scanf("%d", &c[i]);
  14.     }
  15.     int sum_a = 0, sum_b = 0, sum_c = 0;
  16.     for (int i = 0; i < n; i++) {
  17.         sum_a += a[i];
  18.     }
  19.     for (int i = 0; i < m; i++) {
  20.         sum_b += b[i];
  21.     }
  22.     for (int i = 0; i < k; i++) {
  23.         sum_c += c[i];
  24.     }
  25.     if (sum_a == sum_b && sum_b == sum_c) {
  26.         printf("YES\n");
  27.     } else {
  28.         printf("NO\n");
  29.     }
  30.     return 0;
  31. }

这个程序首先读取三个整数n、m、k,分别表示马的数量、担的数量和人的数量。然后分别读取n个马的数量、m个担的重量、k个人的人数,存储在数组a、b、c中。接着计算马的总重量sum_a、担的总重量sum_b、人的总重量sum_c,如果三者相等则输出"YES",否则输出"NO"。

当然,这个程序可以根据需要进行一些改进。以下是一个可能的改进版本,它可以处理更一般的情况,并且输出更详细的信息:

  1. #include <stdio.h>
  2. int main() {
  3.     int n, m, k;
  4.     scanf("%d%d%d", &n, &m, &k);
  5.     int a[n], b[m], c[k];
  6.     for (int i = 0; i < n; i++) {
  7.         scanf("%d", &a[i]);
  8.     }
  9.     for (int i = 0; i < m; i++) {
  10.         scanf("%d", &b[i]);
  11.     }
  12.     for (int i = 0; i < k; i++) {
  13.         scanf("%d", &c[i]);
  14.     }
  15.     int sum_a = 0, sum_b = 0, sum_c = 0;
  16.     for (int i = 0; i < n; i++) {
  17.         sum_a += a[i];
  18.     }
  19.     for (int i = 0; i < m; i++) {
  20.         sum_b += b[i];
  21.     }
  22.     for (int i = 0; i < k; i++) {
  23.         sum_c += c[i];
  24.     }
  25.     if (sum_a == sum_b && sum_b == sum_c) {
  26.         printf("YES, all weights are equal.\n");
  27.     } else {
  28.         printf("NO, weights are not equal.\n");
  29.         if (sum_a != sum_b) {
  30.             printf("The total weight of horses is %d, but the total weight of donkeys is %d.\n", sum_a, sum_b);
  31.         }
  32.         if (sum_b != sum_c) {
  33.             printf("The total weight of donkeys is %d, but the total weight of people is %d.\n", sum_b, sum_c);
  34.         }
  35.     }
  36.     return 0;
  37. }

这个版本的程序在比较重量之前先分别计算了马、担和人各自的重量总和,这样如果重量不等,程序可以输出哪个总和与其它总和不相等,以便用户更好地理解问题。

好的,以下是对上述程序的进一步改进,增加了对输入数据的验证和错误处理:

  1. #include <stdio.h>
  2. int main() {
  3.     int n, m, k;
  4.     scanf("%d%d%d", &n, &m, &k);
  5.     // 检查输入数据的有效性
  6.     if (n <= 0 || m <= 0 || k <= 0) {
  7.         printf("Invalid input: all counts must be positive.\n");
  8.         return 0;
  9.     }
  10.     int a[n], b[m], c[k];
  11.     for (int i = 0; i < n; i++) {
  12.         scanf("%d", &a[i]);
  13.     }
  14.     for (int i = 0; i < m; i++) {
  15.         scanf("%d", &b[i]);
  16.     }
  17.     for (int i = 0; i < k; i++) {
  18.         scanf("%d", &c[i]);
  19.     }
  20.     // 检查输入数据的总和是否为整数,并且不超过整数的最大值
  21.     long long sum_a = 0, sum_b = 0, sum_c = 0;
  22.     for (int i = 0; i < n; i++) {
  23.         sum_a += a[i];
  24.     }
  25.     for (int i = 0; i < m; i++) {
  26.         sum_b += b[i];
  27.     }
  28.     for (int i = 0; i < k; i++) {
  29.         sum_c += c[i];
  30.     }
  31.     if (sum_a != sum_b || sum_b != sum_c) {
  32.         printf("The total weights are not equal.\n");
  33.         if (sum_a != sum_b) {
  34.             printf("The total weight of horses is %lld, but the total weight of donkeys is %lld.\n", sum_a, sum_b);
  35.         }
  36.         if (sum_b != sum_c) {
  37.             printf("The total weight of donkeys is %lld, but the total weight of people is %lld.\n", sum_b, sum_c);
  38.         }
  39.     } else {
  40.         printf("YES, all weights are equal.\n");
  41.     }
  42.     return 0;
  43. }

这个版本的程序增加了对输入数据的验证,包括检查输入数据的有效性和总和是否为整数,并且不超过整数的最大值。如果输入数据无效或总和不是整数,程序将输出错误信息。如果总和不等,程序将输出哪个总和与其它总和不相等,以便用户更好地理解问题。

相关文章:

百马百担c语言编程

以下是一个百马百担问题的C语言编程实现&#xff1a; #include <stdio.h>int main() { int n, m, k; scanf("%d%d%d", &n, &m, &k); int a[n], b[m], c[k]; for (int i 0; i < n; i) { scanf("%d", &a[i]);…...

C++检测字符串中有效的括号个数

匹配一个字符串buf中&#xff0c;连续包换运算符reg的次数&#xff1a; #include <iostream>//return 返回匹配的字符个数 //buf, 要检测的字符串 //reg, 包含的连续运算符 int GetMatchCount(std::string& buf, std::string& reg) {int nMatchCount 0;if (reg.…...

前端依赖下载速度过慢解决方法,nrm 镜像管理工具

npm 默认镜像 &#xff1a;https://registry.npmjs.org/ 问题 使用 npm install 安装依赖的时候&#xff0c;受网络的限制&#xff0c;速度会很慢。 解决 使用国内镜像代理。 nrm nrm 是镜像源管理工具&#xff1b; 1. 安装 nrm npm install nrm --global# 查看镜像源列…...

如何为 3D 模型制作纹理的最佳方法

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 您可以通过不同的方式为 3D 模型创建 3D 纹理。下面我们将介绍为 3D …...

智慧校园:TSINGSEE青犀智能视频监控系统,AI助力优化校园管理

随着科技的飞速发展和信息化社会的到来&#xff0c;智慧校园已经成为教育领域的一种新型发展模式。智慧校园的需求和发展趋势日益显现&#xff0c;其建设已成为当今教育信息化发展的重要方向。 TSINGSEE青犀结合高可靠、高性能的云计算、人工智能、大数据、物联网等技术&#…...

Three的lod技术

1、资源&#xff1a;https://sbcode.net/threejs/lod/ import * as THREE from three import { OrbitControls } from three/examples/jsm/controls/OrbitControls import Stats from three/examples/jsm/libs/stats.module import { GUI } from dat.gui import { GLTFLoader }…...

Git配置

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 前言 前面我们新建了远程仓库并且在Linux上克隆了远程仓库&#xff0c;但是在新建仓库时我们提到会配置gitignore文件&#xff0c;这次我们将会配置他&#xff0c;并给命令起别名。 目录 前言 忽略特殊文件 给命令起别名…...

阻抗控制下机器人接触刚性环境振荡不稳定进行阻抗调节

阻抗接触 刚性环境为ke10000 虚拟阻抗为&#xff1a;kd100&#xff0c;bd10&#xff0c;md1 虚拟阻抗为&#xff1a;kd100&#xff0c;bd10&#xff0c;md5 虚拟阻抗为&#xff1a;kd100&#xff0c;bd10&#xff0c;md10 性能滤波函数的Bode图&#xff1a; bode(1e5/(0.000…...

【鸿蒙应用ArkTS开发系列】-自定义底部菜单列表弹窗

文章目录 前言创建Demo工程创建dialog 文件夹创建ListMenu 接口创建自定义弹窗 ListMenuDialog使用自定义弹窗 打包测试效果演示默认效果菜单带图标效果设置文本颜色效果不同文本颜色效果无标题效果 前言 上一篇文章中我们实现了选择图片、选择文件、拍照的功能 。 链接在这里…...

yolov8添加ca注意力机制

创建文件 coordAtt.py 位置&#xff1a;ultralytics/nn/modules/coordAtt.py ###################### CoordAtt #### start by AI&CV ############################### # https://zhuanlan.zhihu.com/p/655475515 import torch import torch.nn as nn import t…...

linux java后台启动的几种方式

1.使用 nohup 命令 可以使用 nohup 命令启动 Java 应用程序&#xff0c;使其在后台运行&#xff0c;这样即使退出终端或关闭 SSH 连接&#xff0c;Java 应用程序也能继续运行。nohup java -jar myapp.jar &2.使用 & 符号 使用 & 符号可以将 Java 应用程序放到后台…...

selinux-policy-default(2:2.20231119-2)软件包内容详细介绍(5)

接前一篇文章:selinux-policy-default(2:2.20231119-2)软件包内容详细介绍(4) 4. 重点文件内容解析 (1)control/postist文件 上一回解析了control/postinst文件的部分内容,本回继续往下解析。为了便于理解,再次贴出postinst完整代码: #!/bin/sh set -e# summary o…...

代码随想录二刷 |栈与队列 |理论基础

代码随想录二刷 &#xff5c;栈与队列 &#xff5c;理论基础 栈常用操作 队列常用操作 栈与队列是C标准库中的两个数据结构。 栈 栈先进后出&#xff0c;提供 push 和 pop 等接口&#xff0c;所有元素必须符合先进后出的原则&#xff0c;所以栈不提供走访功能&#xff0c;也不…...

java--接口概述

1.认识接口 ①java提供了一个关键字interface&#xff0c;用这个关键字我们可以定义出一个特殊的结构&#xff1a;接口。 ②注意&#xff1a;接口不能创建对象&#xff1b;接口是用来被类实现(implements)的&#xff0c;实现接口的类称为实现类。 ③一个类可以实现多个接口(接…...

出海风潮:中国母婴品牌征服国际市场的机遇与挑战!

近年来&#xff0c;中国母婴品牌在国内市场蓬勃发展的同时&#xff0c;也逐渐将目光投向国际市场。这一趋势不仅受益于中国经济的崛起&#xff0c;还得益于全球市场对高质量母婴产品的不断需求。然而&#xff0c;面对国际市场的机遇&#xff0c;中国母婴品牌同样面临着一系列挑…...

一文读懂MongoDB的知识点(3),惊呆面试官。

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…...

ssm的“魅力”西安宣传网站(有报告)。Javaee项目。

演示视频&#xff1a; ssm的“魅力”西安宣传网站(有报告)。Javaee项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring SpringMvc MybatisVueLayuiElemen…...

怎么让SecureCRT不自动断开连接

SecureCRT 是一个常用的远程连接工具&#xff0c;它可能会因为会话超时或者其他设置而自动断开连接。要防止 SecureCRT 自动断开连接&#xff0c;你可以尝试以下方法&#xff1a; 1. 更改会话选项&#xff1a; 打开 SecureCRT 并连接到你的远程主机后&#xff0c;依次执行以下…...

介绍几种Go语言开发的IDE

文章目录 1.前言2.几种ide2.1 Goland2.2 VsCode示例 2.3 LiteIDE2.4 Eclipse插件GoClipse2.5 Atom2.6 Vim2.7 Sublime Text 3.总结写在最后 1.前言 Go语言作为一种新兴的编程语言&#xff0c;近年来受到了越来越多的关注。 它以其简洁、高效和并发性能而闻名&#xff0c;被广…...

1、设计模式简介(7大原则,3大类)

设计模式有7个原则&#xff1a;单一职责原则、开闭原则、里氏代换原则、依赖倒转原则、接口隔离原则、合成/聚合复用原则、迪米特法则 1&#xff0e;单一职责原则 单一职责原则又称单一功能原则&#xff0c;它规定一个类只有一个职责。如果有多个职责&#xff08;功能&#x…...

华为鲲鹏+银河麒麟V10编译FreeSWITCH1.10.9

# uname -r 4.19.90-17.5.ky10.aarch64 本想编译FreeSWITCH1.10.7&#xff0c;但碰到点问题&#xff0c;后来改1.10.9&#xff0c;相对比较顺利&#xff0c;记录如下&#xff1a; 先安装工具/开发库等&#xff1a; yum install -y git yum install -y wget yum install -y au…...

CFS三层靶机内网渗透

CFS三层靶机内网渗透 一、靶场搭建1.基础参数信息2.靶场搭建2.1网卡配置2.2Target1配置2.2.1 网卡配置2.2.2 Target1 BT配置 2.3Target2配置2.3.1 网卡配置2.3.2 Target2 BT配置 2.4Target3配置 二、内网渗透Target11.1信息收集1.1.1IP收集1.1.2端口收集1.1.3目录收集 1.2 webs…...

软件分享--智能照片识别分类软件

智能照片识别分类软件&#xff0c;批量识别图片并分类 自动识别照片类型&#xff0c;分为10个类别&#xff1a;车辆、动物、风景、花卉、建筑、街景、美食、人像、夜景、植物、其它 分类准确率90% 本地运行、不需要联网、没有网络也能用、没有注册码、永久使用 如果你拍摄了上…...

Leetcode—409.最长回文串【简单】

2023每日刷题&#xff08;四十八&#xff09; Leetcode—409.最长回文串 强烈吐槽&#xff01;&#xff01;&#xff01; 非常不理解&#xff0c;同样的代码&#xff0c;为什么C跑不了C就跑得了&#xff0c;力扣编译器是对C语言有歧视吗&#xff1f;&#xff1f;&#xff1f;…...

计算机网络入侵检测技术研究

摘 要 随着网络技术的发展&#xff0c;全球信息化的步伐越来越快&#xff0c;网络信息系统己成为一个单位、一个部门、一个行业&#xff0c;甚至成为一个关乎国家国计民生的基础设施&#xff0c;团此&#xff0c;网络安全就成为国防安全的重要组成部分&#xff0c;入侵检测技术…...

深入学习锁--Synchronized各种使用方法

一、什么是synchronized 在Java当中synchronized通常是用来标记一个方法或者代码块。在Java当中被synchronized标记的代码或者方法在同一个时刻只能够有一个线程执行被synchronized修饰的方法或者代码块。因此被synchronized修饰的方法或者代码块不会出现数据竞争的情况&#x…...

pycharm中绘制一个3D曲线

import numpy as np import matplotlib.pyplot as plt # 中文的设置 import matplotlib as mp1 from mpl_toolkits.mplot3d import Axes3D mp1.rcParams["font.sans-serif"] ["kaiti"] mp1.rcParams["axes.unicode_minus"] False # 数据创建 X…...

人工智能_AI服务器安装清华开源_CHATGLM大语言模型_GLM-6B安装部署_人工智能工作笔记0092

看到的这个开源的大模型,很牛,~关键让我们自己也可以部署体验一把了,虽然不知道具体内部怎么构造的但是,也可以自己使用也挺好. 可以部署在自己的机器上也可以部署在云服务器上. 安装以后,是可以使用python代码进行提问,然后返回结果的,这样就可以实现我们自己的chat应用了, …...

用户反馈组件实现(Vue3+ElementPlus)含图片拖拽上传

用户反馈组件实现&#xff08;Vue3ElementPlus&#xff09;含图片拖拽上传 1. 页面效果1.1 正常展示1.2 鼠标悬浮1.3 表单 2. 代码部分1.2 html、ts1.2 less部分 3. 编码过程遇到的问题 1. 页面效果 1.1 正常展示 1.2 鼠标悬浮 1.3 表单 2. 代码部分 1.2 html、ts <templ…...

K8S部署nginx并且使用NFS存储数据

安装NFS 在master安装NFS systemctl start nfs-server修改配置 /etc/exports /data *(rw,no_root_squash,no_all_squash,sync)目录为 /data 允许所有地址访问 验证下 [rootmaster nginx]# showmount -e 192.168.57.61 Export list for 192.168.57.61: /data *共享可以正常…...

做网站备案要多久/seo黑帽技术工具

接下来&#xff0c;在前面两篇文章理解的基础上&#xff0c;我们来看下maven2是如何应用在淘宝项目中。 先看下项目工作环境中的setting.xml文件的配置&#xff1a; 这是一个最基本的设置&#xff0c;设置了登陆此资源库服务器的用户名、密码和资源库的位置。通过这两个设置&am…...

网站做博彩反向代理违法/口碑营销公司

在前文中&#xff0c;基于git介绍了webrev工具。实际上&#xff0c;webrev工具还支持hg和svn。最近的工作中不可避免地要使用svn&#xff0c;故在此总结一下如何基于svn在Linux上创建webrev。顺便吐个槽&#xff0c;没有网页版的代码比对&#xff0c;用svn diff简直就是刀耕火种…...

日本韩国出线了吗/宁波seo推广推荐公司

SPRING循环依赖(circular reference)的解决方法参考文章&#xff1a; &#xff08;1&#xff09;SPRING循环依赖(circular reference)的解决方法 &#xff08;2&#xff09;https://www.cnblogs.com/IcreamPrince/p/4040995.html 备忘一下。...

镇江网站seo外包/su搜索引擎优化

GeccoSpider爬虫例子 前些天&#xff0c;想要用爬虫抓取点东西&#xff0c;但是网上很多爬虫都是使用python语言的&#xff0c;本人只会java&#xff0c;因此&#xff0c;只能找相关java的爬虫资料&#xff0c;在开源中国的看到国内的大神写的一个开源的爬虫框架&#xff0c;并…...

网站建设业务员好做吗/开封网络推广公司

我们都知道在使用电脑的过程中&#xff0c;有时候可能会遇到过电脑网络出现红叉怎么修复的情况&#xff0c;出现这种现象该怎么办呢&#xff1f;下面笔者就和大家具体介绍下该问题的解决方法&#xff0c;希望可以帮助大家~1、首先按下winr键打开运行窗口&#xff0c;输入“serv…...

做地方旅游网站/广州seo网站推广平台

Swift语言开发实战高级教程&#xff1a;http://edu.51cto.com/course/course_id-2337.html第一部Swift语言实战开发视频教程, 将Swift语法与iOS开发相结合&#xff0c;不再枯燥的讲解语法。用最短的时间达到最好的效果。所有语法点均结合具体的iOS控件和开发技术&#xff0c;学…...