nyoj 77-开灯问题 (倍数遍历)
2024-09-01 17:56:40
77-开灯问题
- 内存限制:64MB
时间限制:3000ms
特判: No
- 通过数:13
提交数:24
难度:1
题目描述:
有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3 个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输入:n和k,输出开着的灯编号。k≤n≤1000
输入描述:
输入一组数据:n和k
输出描述:
输出开着的灯编号
样例输入:
复制
7 3
样例输出:
1 5 6 7 分析:
1、通过数组存原先的状态;
2、以其倍数关系遍历数组,改变该位置的状态 C/C++代码实现(AC):
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <stack>
#include <map>
#include <queue>
#include <set> using namespace std;
const int MAXN = ;
int f[MAXN] = {}; int main()
{
int n, k;
scanf("%d%d", &n, &k);
for (int i = ; i <= k; ++ i)
{
for (int j = i; j <= n; j += i)
{
if (f[j] == ) f[j] = ;
else f[j] = ;
}
}
for (int i = ; i <= n; ++ i)
if (f[i])
printf("%d ", i);
return ;
}
最新文章
- Smart3D系列教程1之《浅谈无人机倾斜摄影建模的原理与方法》
- Web 组合查询加 分页
- 如何清除WebBrowser的Cookies
- 关于AngularJs,数据绑定与自定义验证
- 02、Unicode 汉子转码小工具
- jQuery特殊符号转义
- IIS6 伪静态
- 设置Ubuntu下adb 及 fastboot权限
- http请求的完整过程
- python的while嵌套 99乘法表 三角形和正方形
- (OK) Linux epoll模型—socket epoll server client chat
- 为clang添加中文关键字
- java拦截器(interceptor)
- IO流2
- Linux:ftp服务本地用户,虚拟用户配置
- 吴恩达机器学习笔记5-梯度下降I(Gradient descent intuition)
- 搭建Hexo博客(二)-连接github
- D3.js的基础部分之选择集的处理 enter和exit的处理方法 (v3版本)
- spring AOP 之三:使用@AspectJ定义切入点
- bootstrap使用基础
热门文章
- jar包的多层级maven依赖的坑与正确传递方法
- idea迁移到其他电脑,省去重新安装破解及配置
- 为什么要学3D建模呢?你看中的肯定是这几点
- Pycharm 常用快捷键大全
- python方法是什么?
- 使用zepto中animate报错“Uncaught TypeError: this.bind is not a function”的解决办法
- [洛谷P2425]小红帽的回文数
- .NET Framework概述
- 关于在vue-cli脚手架中使用CDN引入element-ui不成功的坑
- 设计模式(五)Singleton模式