蓝桥每日真题之整数分解
题目来源
2021年蓝桥省赛第二场D题
题目连接:http://acm.mangata.ltd/p/P1102
视频讲解
https://www.bilibili.com/video/BV11L4y1b7JQ/
思路
思路1
这个很容易想到直接使用五重循环去跑,但是这样估计是比赛结束前应该是跑不出来得
思路2
我们很轻松能想到一个优化那就是去掉一层,因为我们枚举四层后剩下的方案数就是余下的数,但是这也不够,我们再仔细想想会发现我们其实只用三层循环即可,因为剩下的可能数量就为余数减1,那么这样来看我们就能很轻松的解决这个问题
思路3
使用隔板法,我们将2021看作n个隔板,那么就会有2020个间隔,那么我们的目的不就是想将这一堆2021个板子分成5份吗,所以只需要挑选四个间隔点即可,那么答案总数就是C20204C_{2020}^4C20204也就是691677274345
代码
思路2的代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define mod 1000000009
#define endl "\n"
#define PII pair<int,int>
ll ksm(ll a,ll b) {ll ans = 1;for(;b;b>>=1LL) {if(b & 1) ans = ans * a % mod;a = a * a % mod;}return ans;
}ll lowbit(ll x){return -x & x;}const int N = 2e6+10;
int n,a[N];int main()
{// cout<<691677274345<<endl;
// return 0;ll ans = 0;for(ll i = 1;i <= 2021; ++i) {for(ll j = 1;j <= 2021; ++j) {for(ll k = 1;k <= 2021; ++k) {ll m = 2021 - i - j - k;if(m >= 2) ans += m - 1;else break;}}}cout<<ans<<endl;return 0;
}
//ans = 691677274345
思路3的代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define mod 1000000009
#define endl "\n"
#define PII pair<int,int>
ll ksm(ll a,ll b) {ll ans = 1;for(;b;b>>=1LL) {if(b & 1) ans = ans * a % mod;a = a * a % mod;}return ans;
}ll lowbit(ll x){return -x & x;}const int N = 2e6+10;
int n,a[N];int main()
{// cout<<691677274345<<endl;
// return 0;ll ans = 1;for(ll i = 2020,j = 1;i >= 2017; --i,++j) {ans *= i;ans /= j;}cout<<ans<<endl;return 0;
}
//ans = 691677274345
蓝桥每日真题之整数分解相关推荐
- 蓝桥每日真题之时间显示
题目来源 2021年蓝桥杯省赛第一场F题 题目链接:http://acm.mangata.ltd/p/P1488 考点 暴力.小技巧 视频讲解 视频连接:https://www.bilibili.co ...
- 蓝桥每日真题之完全日期
题目来源 2021年蓝桥杯国赛C题 题目链接:http://acm.mangata.ltd/p/P1504 考点 暴力枚举,常识or手数 视频讲解 视频连接:https://www.bilibili. ...
- 蓝桥每日真题之负载均衡
题目来源 2021年蓝桥省赛第二场I题 题目链接:http://acm.mangata.ltd/p/P1480 考点 优先队列.模拟 视频讲解 视频连接:https://www.bilibili.co ...
- 蓝桥每日真题之完全平方数
题目来源 2021年蓝桥省赛第二场H题 题目链接:http://acm.mangata.ltd/p/P1165 视频讲解 视频连接:https://www.bilibili.com/video/BV1 ...
- 蓝桥杯python省赛冲刺篇2——常用算法的详细解析及对应蓝桥杯真题:打表模拟法、递推递归法、枚举法、贪心算法、差分与前缀和
注意:加了题目链接 目录 注意:加了题目链接 一.打表模拟法 介绍 1. 算式问题 题目描述 解析与代码演示 2. 求值 题目描述 解析与代码演示 3. 既约分数 题目描述 解析与代码演示 4. 天干 ...
- 蓝桥杯真题2017-2021
刷完近几年真题,感觉理解完之后,拿奖问题不大,本人这次获得2022年蓝桥杯javaB组省一,以下是历年javaB组省赛题目. 文章目录 2017年真题 一.购物单 二.纸牌三角形 三.承压计算 四.魔 ...
- python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在19351936年应邀来中国清华大学讲学。。。
python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学.他曾在1935~1936年应邀来中国清华大学讲学... 问题描述 全排列模板: 美国数学家维纳(N. ...
- 第五届蓝桥杯真题解析【JavaC组】
第五届蓝桥杯真题解析[JavaC组] 业精于勤,荒于嬉:行成于思,毁于随.--韩愈 文章目录 ***第五届蓝桥杯真题解析[JavaC组]*** 前言 A:猜年龄 B:等额本金 C:猜字母 D:大衍数列 ...
- 【蓝桥杯真题】16天冲刺 Python
距离比赛很快了,希望和我一起准备的PY党能更加熟练的掌握Python! 1.距离和(模拟赛填空题) 问题描述: 两个字母之间的距离定义为它们在字母表中位置的距离.例如 A和 C 的距离为 2,L 和 ...
最新文章
- Web SCADA 电力接线图工控组态编辑器
- Java高并发编程:取消和关闭
- AM,DSB,SSB,FM信号调制matlab
- PHP操作MySQL数据库(连接、增删改操作)
- 简单的FreeBSD 的内核编译
- mysql的安装用于连接jsp_怎么用JSP连接安装在Linux上的MySQL
- android项目中有哪几种依赖关系,Android Studio项目中三种依赖的添加方式
- go读取email正文_Go语言库系列之email
- 程序员!别逼自己刷题了!每天花10分钟做这件事,编程能力暴增!
- psd文件用什么打开?如何修改psd文件?psd样式怎么修改文字?
- 计算机网络科研项目申请书,科研项目申请书范文例.doc
- c语言口袋妖怪代码大全,口袋妖怪银版金手指代码使用大全
- visual studio设置背景颜色为眼睛保护色
- 网吧服务器系统ghost,深度网吧GHOST辅助工具
- 语音识别算法、模型等解析
- sumif计算机怎么学,SUMIF 带给Excel不一样的条件求和
- 切换WiFi并配置静态或动态IP
- java创建tensorfly对象,Tensorflow对象检测自定义数据集
- 干货!Flask 动态展示 Pyecharts 图表数据的几种方法!
- JPEG图片压缩的Python实现