算法研究之开灯问题
来源:互联网 发布:域名备案地点查询 编辑:程序博客网 时间:2024/05/24 05:04
/*
* 有n 盏灯,编号为l-n. 第1 个人把所有灯打开,第2 个人按下所编号为2 的倍数
的开关〈这些灯将关掉) , 第3 个人接下所有辑号为3 的情数的开关〈其中共掉的灯将
披打开,开着的灯将关闭) ,依此类推.一共有k 个人,间最后有哪些灯开着?
*/
public class Light {
//boolen临时数组
public boolean[] a;
//结果数组
public int[] result;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Light light=new Light();
light.sweepLight(100, 20);
int[] t=light.result;
for(int i=0;i<t.length;i++){
if(t[i]==1){
System.out.println("第"+(i+1)+"号灯亮着!");
}
}
}
/*
* n 灯的个数 k 人的数量
*/
public void sweepLight(int n,int k){
a=new boolean[n];
result=new int[n];
/*
* 初始化a
*/
for(int m=0;m<n;m++){
a[m]=false;
}
for(int i=0;i<k;i++){
for(int j=0;j<n;j++){
if((j+1)%(i+1)==0){
a[j]=!a[j];
}
}
}
//结果赋值给result
for (int i=0;i<n;i++) {
if(a[i]==false){
result[i]=0;
}else {
result[i]=1;
}
}
}
}
* 有n 盏灯,编号为l-n. 第1 个人把所有灯打开,第2 个人按下所编号为2 的倍数
的开关〈这些灯将关掉) , 第3 个人接下所有辑号为3 的情数的开关〈其中共掉的灯将
披打开,开着的灯将关闭) ,依此类推.一共有k 个人,间最后有哪些灯开着?
*/
public class Light {
//boolen临时数组
public boolean[] a;
//结果数组
public int[] result;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Light light=new Light();
light.sweepLight(100, 20);
int[] t=light.result;
for(int i=0;i<t.length;i++){
if(t[i]==1){
System.out.println("第"+(i+1)+"号灯亮着!");
}
}
}
/*
* n 灯的个数 k 人的数量
*/
public void sweepLight(int n,int k){
a=new boolean[n];
result=new int[n];
/*
* 初始化a
*/
for(int m=0;m<n;m++){
a[m]=false;
}
for(int i=0;i<k;i++){
for(int j=0;j<n;j++){
if((j+1)%(i+1)==0){
a[j]=!a[j];
}
}
}
//结果赋值给result
for (int i=0;i<n;i++) {
if(a[i]==false){
result[i]=0;
}else {
result[i]=1;
}
}
}
}
0 0
- 算法研究之开灯问题
- 算法研究之开灯问题
- 算法研究之开灯问题
- 算法篇-开灯问题
- 算法入门开灯问题
- 算法题-开灯问题
- 算法奥秘之数组实现开灯问题、蛇形填数
- 算法入门经典:开灯问题
- 算法之路二:刘汝佳算法竞赛入门经典 3.2开灯问题
- 算法入门开灯问题,新做法
- 算法竞赛入门经典 开灯问题
- 算法竞赛入门经典-开灯问题
- 算法竞赛_开灯问题_C++
- 开灯问题
- 开灯问题
- 开灯问题
- 开灯问题
- 开灯问题
- java ajax请求示例
- C语言知识查漏补缺与心得体会(3)
- Linux系统启动那些事—基于Linux 3.10内核
- 第五章 5.3.2节练习
- hdu 5067 状态dp
- 算法研究之开灯问题
- LINQ之路 2:C# 3.0的语言功能(上)
- USACO Section 1.4 Mother's Milk
- 算法研究之字符串包含
- operator->重载问题总结(转)
- HDU 2871 Memory Control(线段树)
- Runtime.getRuntime().exec问题
- java运行环境安装
- 算法研究之左旋字符串