关键词:
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):
1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <cmath> 6 #include <stack> 7 #include <map> 8 #include <queue> 9 #include <set> 10 11 using namespace std; 12 const int MAXN = 1005; 13 int f[MAXN] = 0; 14 15 int main() 16 17 int n, k; 18 scanf("%d%d", &n, &k); 19 for (int i = 1; i <= k; ++ i) 20 21 for (int j = i; j <= n; j += i) 22 23 if (f[j] == 0) f[j] = 1; 24 else f[j] = 0; 25 26 27 for (int i = 1; i <= n; ++ i) 28 if (f[i]) 29 printf("%d ", i); 30 return 0; 31
开灯问题(代码片段)
问题描述:有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关,依此类推,一共k个人,问最后有哪些灯开着? 输入n,k,输出... 查看详情
开灯问题(代码片段)
题目:有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关,第3个人按下所有编号为2倍数的开关(其中关掉的被打开,开着灯的将会被关掉),以此类推。一共K个人,最后有哪些灯是开着的?输... 查看详情
开灯问题(代码片段)
有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依此类推。一共有k个人,问最后... 查看详情
nyoj公约数和公倍数(代码片段)
...sp;| 内存限制:65535 KB难度:1 描述小明被一个问题给难住了,现在需要你帮帮忙。问题是:给出两个正整数,求出它们的最大公约数和最小公倍数。 输入第一行输入一个整数n(0<n<=10000),表示有n组测试数据;... 查看详情
开灯问题
有n盏灯,编号为1~n,第一个人把所有灯打开,第二个人按下所有编号为2的倍数开关(这些灯将被关掉),第三个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),一次类推,一共有k个人,问最后哪些... 查看详情
nyoj40-公约数和公倍数(gcd)(代码片段)
...制:1000msSpecialJudge:Noaccepted:30submit:47题目描述:小明被一个问题给难住了,现在需要你帮帮忙。问题是:给出两个正整数,求出它们的最大公约数和最小公倍数。输入描述:第一行输入一个整数n(0<n<=10000),表示有n组测试数据;... 查看详情
nyoj53-不高兴的小明(遍历)(代码片段)
...0msSpecialJudge:Noaccepted:28submit:89题目描述: 小明又出问题了。妈妈认为聪明的小明应该更加用功学习而变的更加厉害,所以小明除了上学之外,还要参加妈妈为他报名的各科复习班。另外每周妈妈还会送他去学习朗诵、舞蹈... 查看详情
开灯问题
开灯问题时间限制:3000ms 内存限制:65535KB难度:1描述有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有... 查看详情
开灯问题
问题描述: 开灯问题,有n盏灯,编号为1~n。第一个人把所有灯都打开,第二个人按下所有编号为2的倍数的开关(这些灯将被关掉),第三个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着... 查看详情
nyoj202——红黑树(代码片段)
...看了看红黑树,结果大佬告诉我:左旋右旋不会影响中序遍历......然后就写了个简单的中序遍历......#include<bits/stdc++.h>usingnamespacestd;constintmaxn=20;structnodeintdata;intlchild,rchild;nd[maxn];voidmid_search(intk)if(k!= 查看详情
开灯问题--------《算法竞赛入门指导》p83
开灯问题。有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依此类推。一共有k个... 查看详情
开灯问题-----00004
描述有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3 个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依此类推。一共有k... 查看详情
开灯问题(代码片段)
#include<stdio.h>#include<math.h>//算法竞赛的目标是编程对任意输入均得到正确的结果。//请先独立完成,如果有困难可以翻阅本书代码仓库中的答案,但一定要再次独立完成。//“抓住主要矛盾”——始终把学习、实验的焦点... 查看详情
文巾解题77.组合(代码片段)
1题目描述2 解题思路 如果解决一个问题有多个步骤,每一个步骤有多种方法,题目又要我们找出所有的方法,可以使用回溯算法;回溯算法是在一棵树上的 深度优先遍历(因为要找所有的解,所以需要... 查看详情
反转开灯问题facetherightway(代码片段)
题目FarmerJohnhasarrangedhisN(1≤N≤5,000)cowsinarowandmanyofthemarefacingforward,likegoodcows.Someofthemarefacingbackward,though,andheneedsthemalltofaceforwardtomakehislifeperfect.Fortunately,FJrecentlyboughtanautomaticcowturningmachine.Sincehepurchasedthediscountmodel,itmustbeirrevocablypres... 查看详情
反转开灯问题facetherightway(代码片段)
题目FarmerJohnhasarrangedhisN(1≤N≤5,000)cowsinarowandmanyofthemarefacingforward,likegoodcows.Someofthemarefacingbackward,though,andheneedsthemalltofaceforwardtomakehislifeperfect.Fortunately,FJrecentlyboughtanautomaticcowturningmachine.Sincehepurchasedthediscountmodel,itmustbeirrevocablypres... 查看详情
leetcode-二叉树的层序遍历-77(代码片段)
题目要求 给你一个二叉树,请你返回其按层序遍历得到的节点值。(即逐层地,从左到右访问所有节点)。解析 广度优先搜索,入队出队代码实现classSolutionpublic:vector<vector<int>>levelOrder(TreeNode*... 查看详情
开灯和蛇形
...头绪,看了答案之后才慢慢能理解,嘛,一步一步来吧。开灯问题,有n盏灯,编号为1-n,第一个人把所有的灯都打开,第二个人按下所有编号为2的倍数的开关(这些灯将被关掉),第三个人按下所有编号为3倍数的开关(其中关... 查看详情