A1602 结果填空:开关灯

简介: A1602 结果填空:开关灯

文章目录

一、A1602 结果填空:开关灯

总结


一、A1602 结果填空:开关灯

本题链接:A1602 结果填空:开关灯


题目:


蒜头君今天回到了老家的大宅院,老家的灯还是那中拉线的灯(拉一次为亮,再拉一次就灭),蒜头君觉得无聊。把 1000盏灯 3 的倍数拉了一次,5 的倍数拉了一次,7的倍数拉了一次(灯得的编号从 1-1000,灯的初始状态都是亮的)。这个时候蒜头君在想还剩下几盏灯还在亮着?


提示:请不要输出多余的符号。


本博客给出本题截图:

image.png


分析

#include <iostream>
using namespace std;
const int N = 1010;
bool s[N];
int res;
int main()
{
  for (int i = 1; i <= 1000; i ++ )
  {
    if (i % 3 == 0) s[i] ^= 1;    //异或操作写成s[i] = !s[i];也可
    if (i % 5 == 0) s[i] ^= 1;
    if (i % 7 == 0) s[i] ^= 1;
  }
  for (int i = 1; i <= 1000; i ++ )
    if (s[i] == 0) res ++;
  cout << res;
  return 0;
}

AC代码

#include <iostream>
using namespace std;
int main() {
    cout << "571" << endl;
    return 0;
}

总结

注意不能写成

  for (int i = 1; i <= 1000; i ++ )
    if (i % 3 == 0 || i % 5 == 0 || i % 7 == 0) 
      s[i] ^= 1;

因为这个操作当是3和5的倍数的时候只执行一次操作,实际应该执行两次操作


目录
相关文章
|
9月前
学生开闭灯问题
学生开闭灯问题
96 4
|
6月前
|
机器人 Linux 异构计算
实例1:控制树莓派板载LED灯闪烁
本文是一个关于如何使用Python编程控制树莓派板载LED灯闪烁的实验教程,涵盖了树莓派的基本概念、LED控制文件的读写操作、Python `open()` 和 `sleep()` 函数的使用方法,以及具体的实验步骤和代码实现,目的是让读者通过实践熟悉树莓派操作和Linux文件读写。
137 1
实例1:控制树莓派板载LED灯闪烁
|
C语言
单片机控制LED灯
单片机控制LED灯
297 0
|
Python
Leetcode|灯泡开关
Leetcode|灯泡开关
96 0
LabVIEW控制Arduino LED灯闪烁(基础篇—2)
利用LIAT中的数字I/O函数库,通过LabVIEW控制Arduino Uno控制板上D13管脚上LED灯,实现等间隔闪烁。
|
C语言
开关及数码管实验
开关及数码管实验
|
算法 C++
每日算法系列【LeetCode 319】灯泡开关
每日算法系列【LeetCode 319】灯泡开关
156 0
|
编译器
【51单片机】按键操作(单个灯闪烁&&流水灯)
按键操作(单个灯闪烁&&流水灯)
598 0
单片机开关控制LED的点亮及闪烁
单片机开关控制LED的点亮及闪烁
354 0
stm32 CubeMX配置按键开关灯
stm32 CubeMX配置按键开关灯
200 0