2019蓝桥杯省赛题目——“数的分解”

这篇具有很好参考价值的文章主要介绍了2019蓝桥杯省赛题目——“数的分解”。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

题目

要求

思路

最后的代码

结果


题目

把 2019 分解成 3 个各不相同的正整数之和,并且要求每个正整数都不包含数字 2 和 4,一共有多少种不同的分解方法?

注意交换 3 个整数的顺序被视为同一种方法,例如 1000+1001+18 和 1001+1000+18 被视为同一种。

要求

这是一道结果填空的题,你只需要算出结果后提交即可

思路

思路很简单——穷举每一个数字

每个正整数都不包含数字 2 和 4就把各个位数的千位百位十位各位提取出来分别判断

bool Panduan(int n)
{
	int a = n / 1000;
	int b = (n - a * 1000) / 100;
	int c = (n - a * 1000 - b * 100) / 10;
	int d = n % 10;
	if (a == 2 || a == 4 || b == 2 || b == 4 || c == 2 || c == 4 || d == 2 || d == 4)
	{
		return false;
	}
	else
	{
		return true;
	}
}

关于筛选只是顺序不同的数字可以固定大小比如三个数字x,y,z固定x>y>z这样就不会因为顺序不一样,造成多算出来结果

	for (int i = 1; i<2019 ;i++)
	{
		for (int j = i+1; j < sum_1 - i; j++)
		{
			int z = sum_1 - i - j;
        ...
        }
    }

最后的代码

就是

#include <iostream>
using namespace std;
int sum_1 = 2019;
bool Panduan(int n)
{
	int a = n / 1000;
	int b = (n - a * 1000) / 100;
	int c = (n - a * 1000 - b * 100) / 10;
	int d = n % 10;
	if (a == 2 || a == 4 || b == 2 || b == 4 || c == 2 || c == 4 || d == 2 || d == 4)
	{
		return false;
	}
	else
	{
		return true;
	}
}
int main()
{
	int sum_max = 0;
	for (int i = 1; i<2019 ;i++)
	{
		for (int j = i+1; j < sum_1 - i; j++)
		{
			int z = sum_1 - i - j;
			if (i == z || z == j || j >= z)
			{
				continue;
			}
			if (Panduan(i) && Panduan(j) && Panduan(z))
			{
				sum_max++;
			}
			else
			{
				continue;
			}
		}
	}
	cout << sum_max << endl;
    return 0;
}

结果

40785文章来源地址https://www.toymoban.com/news/detail-627010.html

到了这里,关于2019蓝桥杯省赛题目——“数的分解”的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第九届蓝桥杯省赛——3字母阵列(二维数组)

    仔细寻找,会发现:在下面的8x8的方阵中,隐藏着字母序列:“LANQIAO”。 SLANQIAO ZOEXCCGB MOAYWKHI BCCIPLJQ SLANQIAO RSFWFNYA XIFZVWAL COAIQNAL 我们约定: 序列可以水平,垂直,或者是斜向; 并且走向不限(实际上就是有一共8种方向)。 上图中一共有4个满足要求的串。 下面有一个更大的

    2024年02月15日
    浏览(35)
  • 蓝桥杯省赛无忧 STL 课件13 list

    以下是一个示例,展示如何使用listt容器: 在上述示例中,我们首先创建了一个list容器myList,然 后使用push_back()和push_front()函数分别在链表尾部和头 部插入元素。最后,使用范围基于范围的for循环遍历链 表并输出元素。 需要注意的是,由于list是双向链表,因此插入和删除操

    2024年02月02日
    浏览(26)
  • 蓝桥杯省赛PREV-348试题1:算术填符号

    资源限制 内存限制:256.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s 匪警请拨110,即使手机欠费也可拨通! 为了保障社会秩序,保护人民群众生命财产安全,警察叔叔需要与罪犯斗智斗勇,因而需要经常性地进行体力训练和智力训练! 某批警察叔叔正在

    2023年04月09日
    浏览(28)
  • 【十三届蓝桥杯省赛解析javaC组】

    题目描述 解题思路 A题相对比较简单,这题有两种解法 第一种是可以利用记事本把文本复制,然后自己手动排序 第二种是写代码:具体思路是定义一个字符串用来储存问文本,然后把文本转成字符型数组,利用Arrays.sort对字符型数组进行排序,最终实现字符的排序 代码示例

    2023年04月20日
    浏览(29)
  • 【蓝桥杯省赛真题18】python阴影图形面积 青少年组蓝桥杯python编程省赛真题解析

    目录 python阴影图形面积 一、题目要求 1、编程实现 2、输入输出

    2023年04月23日
    浏览(30)
  • 第十四届蓝桥杯省赛PythonA/C组------翻转

    小蓝用黑白棋的n个棋子排成了一行,他在脑海里想象出了一个长度为n的01串T,他发现如果把黑棋当做1,白棋当做0,这一行棋子也是一个长度为n 的01串S。 小蓝决定,如果在S中发现一个棋子和它两边的棋子都不一样,就可以将其翻转变成另一个颜色。也就是说,如果S中存在

    2024年01月22日
    浏览(38)
  • 最小剩余空间-第11届蓝桥杯省赛Python真题精选

    [导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python 蓝桥杯真题解析100讲》, 这是解读系列的第31讲。 最小剩余空间, 本题是2020年6月20日举办的第11届蓝桥杯青少组Pyt

    2024年01月17日
    浏览(34)
  • 第十三届蓝桥杯省赛 python B组复盘

    😎🥳😎 备战蓝桥杯第一弹–复盘 思路 (当时第一次参加蓝桥杯,当时现场心里小鹿乱撞,用排序输出了还每个字母数数验证一番(滑稽)) 字符串转列表 列表排序 列表转字符串 代码 思路 当时在现场程序没跑出来 想着那个数取余2余1,取余4余1,取余8余1可以只看取余8余1的,

    2023年04月20日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包