C语言/数据结构动态规划求解:从每组数字中选一个数,使总和为偶数

发布时间:2026/9/11 10:39:46

C语言/数据结构动态规划求解:从每组数字中选一个数,使总和为偶数 问题描述小M面对一组数字字符串每个字符串由 0 到 9 的数字字符组成。每个字符串代表一个数字组组内的每个数字字符是一个独立的数字选项。小M需要从每个数字组中选择一个数字即从每个字符串中选择一个字符对应的数字然后将这些选出的数字按顺序组成一个新的数实际上我们只关心这些数字的和的奇偶性而不是组成的数本身。目标是使得所有选出的数字之和为偶数。请计算出有多少种不同的选择方法可以达到这一目标。注意每个字符串中的数字字符都是独立的选项例如字符串 123 表示该组有三个可选数字1、2、3。选择方法不同是指至少在一个组中选择了不同的数字。输入格式输入为一个列表numbers包含多个字符串。每个字符串仅由数字字符0-9组成长度至少为 1。列表长度至少为 1。输出格式输出一个整数表示满足条件的选择方法总数。程序代码#include stdio.h#include stdlib.h#include string.hint countEvenSumChoices(char** numbers, int numbersSize) {long long even 1, odd 0;for (int i 0; i numbersSize; i) {int len strlen(numbers[i]);int evenCount 0, oddCount 0;for (int j 0; j len; j) {int digit numbers[i][j] - 0;if (digit % 2 0) {evenCount;} else {oddCount;}}long long newEven even * evenCount odd * oddCount;long long newOdd even * oddCount odd * evenCount;even newEven;odd newOdd;}return even;}int main() {char* numbers[] {123, 456, 789};int numbersSize 3;printf(%d\n, countEvenSumChoices(numbers, numbersSize));return 0;}#include stdio.h #include stdlib.h #include string.h int countEvenSumChoices(char** numbers, int numbersSize) { long long even 1, odd 0; for (int i 0; i numbersSize; i) { int len strlen(numbers[i]); int evenCount 0, oddCount 0; for (int j 0; j len; j) { int digit numbers[i][j] - 0; if (digit % 2 0) { evenCount; } else { oddCount; } } long long newEven even * evenCount odd * oddCount; long long newOdd even * oddCount odd * evenCount; even newEven; odd newOdd; } return even; } int main() { char* numbers[] {123, 456, 789}; int numbersSize 3; printf(%d\n, countEvenSumChoices(numbers, numbersSize)); return 0; }运行结果
延伸阅读

更多相关文章

2026/9/11 10:36:33

CMS系统架构解析与开发实战指南

1. 信息发布内容管理系统CMS概述信息发布内容管理系统(Content Management System,简称CMS)是现代网站开发的核心基础设施之一。作为一个从业十余年的全栈开发者,我见证了CMS从早期的简单文章发布系统,逐步演变为如今功…

2026/9/11 10:36:33

AgentScope 2.0多轮对话记忆机制:in-token实证记忆原理与实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/11 10:36:33

Origin科研绘图导出优化:消除图片空白区域技巧

1. 问题背景与现象描述作为科研绘图领域的标杆软件,Origin在数据可视化方面有着不可替代的地位。但许多用户在导出TIF/PNG/JPG等常见图像格式时,都会遇到一个令人头疼的问题——生成的图片四周存在过多空白区域。这种现象在需要将图表插入论文或PPT时尤为…

2026/9/11 10:36:33

语音识别芯片选型全维度指南:物理层到工程层硬核拆解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/11 10:36:33

AgentScope 2.0零基础入门:用Python原生语法编排智能体

1. 这不是“又一个AI框架”,而是你真正能上手编排智能体的第一块踏脚石 AgentScope 2.0 这个名字最近在技术社区里出现的频率,已经快赶上Python新手装环境时搜“pip install失败”了。但和那些堆满抽象概念、动辄要求你先读三篇论文再写五行代码的框架不…

2026/9/11 10:31:32

树莓派Pico存储架构详解:ROM/SRAM/Flash物理布局与访问机制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/10 16:39:38

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/10 11:16:38

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/10 12:32:02

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/10 15:19:50

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/10 15:49:53

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码