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

网站建设用什么语言好上海企业网上公示系统

网站建设用什么语言好,上海企业网上公示系统,h5一般收费标准,建筑工程网官网平台B4283 [蓝桥杯青少年组省赛 2022] 分成整数 提交答案加入题单复制题目 提交1.15k 通过582 时间限制1.00s 内存限制512.00MB 题目编号B4283 提供者 chen_zhe 难度普及− 历史分数100 提交记录 查看题解 题目反馈 标签 蓝桥杯青少年组2022 显示算法标签 相关…

B4283 [蓝桥杯青少年组省赛 2022] 分成整数

提交答案加入题单复制题目

提交1.15k

通过582

时间限制1.00s

内存限制512.00MB

题目编号B4283

提供者

chen_zhe

难度普及−

历史分数100

 提交记录    查看题解    题目反馈

标签

蓝桥杯青少年组2022

显示算法标签

相关讨论

进入讨论版

查看讨论

推荐题目

暂无

 洛谷推荐

 复制 Markdown 展开 进入 IDE 模式

题目描述

给定一个正整数 N,然后将 N 分解成 3 个正整数之和,计算出共有多少种符合要求的分解方法。要求:

  1. 分解的 3 个正整数各不相同;
  2. 分解的三个正整数中各个数位都不含数字 3 和 7。

例如:N 为 8,可分解为 (1,1,6)、(1,2,5)、(1,3,4)、(2,2,4)、(2,3,3),其中满足要求的分解方法有 1 种,为 (1,2,5)。

输入格式

输入一个正整数 N(5<N<501),表示要分解的正整数。

输出格式

输出一个整数,表示共有多少种符合要求的分解方法。

输入输出样例

输入 #1复制

8

输出 #1复制

1

#include<bits/stdc++.h>
using namespace std;
bool check(int x) {while(x) {if(x%10==3||x%10==7)return false;x/=10;}return true;
}
int main() {int n,cnt=0;cin>>n;for(int i=1; i<=n; i++) {for(int j=i+1; j<=n; j++) {for(int k=j+1; k<=n; k++) {if(i+j+k==n&&check(i)&&check(j)&&check(k))cnt++;}}}cout<<cnt;return 0;
}

### 题目理解
我们需要将一个给定的正整数N分解成三个不同的正整数的和,且这三个数满足以下条件:
1. 三个数各不相同。
2. 每个数的任何数位上都不包含数字3或7。

### 解决思路
1. **生成所有可能的三元组**:首先,我们需要生成所有可能的三元组(i, j, k),使得i + j + k = N,且i < j < k(这样可以避免重复,因为顺序不重要)。
2. **检查数字的有效性**:对于每个三元组中的数字,检查它们是否不包含数字3或7。
3. **计数有效分解**:统计满足上述所有条件的三元组的数量。

### 具体步骤
1. **遍历所有可能的第一个数i**:i的范围可以从1到N-2(因为至少j和k要比i大,且j和k至少为i+1和i+2)。
2. **对于每个i,遍历可能的第二个数j**:j的范围从i+1到N-i-1(因为k至少要比j大,且k = N - i - j > j)。
3. **计算第三个数k**:k = N - i - j,必须满足k > j。
4. **检查数字的有效性**:对于i, j, k,检查它们的每一位数字是否都不是3或7。
5. **统计有效分解**:如果i, j, k都有效,则计数加1。

### 检查数字的有效性
编写一个辅助函数`is_valid(num)`,检查数字`num`的每一位是否都不包含3或7:
- 将数字转换为字符串,然后检查每一位字符是否不是'3'或'7'。
- 或者,可以逐位提取数字并检查。

### 代码实现
```python
def is_valid(num):
    s = str(num)
    return '3' not in s and '7' not in s

N = int(input())
count = 0

for i in range(1, N // 3 + 1):  # i is the smallest, so at most N//3
    for j in range(i + 1, (N - i) // 2 + 1):  # j is the middle, so at most (N-i)/2
        k = N - i - j
        if k > j and is_valid(i) and is_valid(j) and is_valid(k):
            count += 1

print(count)
```

### 代码解释
1. **is_valid函数**:检查数字是否不包含3或7。
2. **输入N**:读取要分解的正整数。
3. **初始化计数器count**:用于统计有效分解的数量。
4. **双重循环生成三元组**:
   - 外层循环遍历i的可能取值(从1到大约N/3)。
   - 内层循环遍历j的可能取值(从i+1到大约(N-i)/2)。
   - 计算k = N - i - j,并检查k > j。
5. **检查有效性**:如果i, j, k都有效,则计数器加1。
6. **输出结果**:打印满足条件的分解数量。

### 示例验证
以输入N=8为例:
- 可能的分解:
  - i=1, j=2, k=5 → 有效 (1, 2, 5)。
  - i=1, j=3, k=4 → 3和4,3无效。
  - 其他分解要么重复数字,要么包含无效数字。
- 输出1,与示例一致。

### 复杂度分析
- 时间复杂度:O(N²),因为有两重循环,每重循环大约N次。
- 空间复杂度:O(1),只使用了常数空间。

### 优化
- 可以通过预先生成所有有效的数字(不包含3和7的数字)来加速检查,但在这个问题中N不大(<501),直接检查即可。

http://www.dtcms.com/a/425591.html

相关文章:

  • 网站做闪电电磁全国软件开发培训班
  • 网页与网站的区别是什么wang域名建的网站
  • 网站备案个人和企业的区别做房地产自己要花钱开网站
  • 北京 网站定制开发wordpress网页文件太多
  • 网站美工做专题尺寸多少?网站首页设计报价多少
  • 企业网站建设报告wordpress忘记后台账号
  • 营站快车代理平台校园内部网站建设方案
  • 网站开发建设需要多少钱怎么用表格做网站
  • 想做一个公司的网站去哪可以做做网站前端需要编程基础吗
  • 菜单设计制作网站合肥做网站价格是多少
  • 学校校园网站手机怎么做优惠券网站
  • 定州三公司网站合肥网络公司seo
  • 山东威海最新消息今天宁波seo搜索优化费用
  • wordpress修改注册页枣庄网站优化
  • 网站建设百度搜不到9个成功的市场营销案例
  • 建设银行网站注册ui设计培训多长时间能学会
  • 网站建设背景介绍怎么写网站专题框架怎么做
  • 系统官网网站模板下载网站自动采集指标
  • 不做网站做百家号网络游戏代理
  • 建设银行网站招聘官网wordpress ent主题
  • 网站建设与行政管理做网站免费空间
  • 中小企业网站查询有哪几种语言做的网站
  • 怎么实现网站建设报价方案江阴做网站的公司
  • pr值高的网站建设厅网站的投诉可以哪里查
  • 龙岗网站价格专业网站设计定制
  • 网站建设与设计教程视频基层建设是哪个网站的
  • 设计网站怎么设计设计制作属于哪个行业
  • 广州网站备案绥中网站建设分类信息网
  • 上海做网站的公3322做网站
  • 网站多国语言淄博市临淄区建设局网站