zoukankan      html  css  js  c++  java
  • LeetCode 319

    Bulb Switcher

    There are n bulbs that are initially off. You first turn on all the bulbs.
    Then, you turn off every second bulb. On the third round, you toggle every third bulb
    (turning on if it's off or turning off if it's on).
    For the ith round, you toggle every i bulb. For the nth round, you only toggle the last bulb.
    Find how many bulbs are on after n rounds.

    Example:

    Given n = 3.

    At first, the three bulbs are [off, off, off].
    After first round, the three bulbs are [on, on, on].
    After second round, the three bulbs are [on, off, on].
    After third round, the three bulbs are [on, off, off].

    So you should return 1, because there is only one bulb is on.

     1 /*************************************************************************
     2     > File Name: LeetCode319.c
     3     > Author: Juntaran
     4     > Mail: Jacinthmail@gmail.com
     5     > Created Time: Tue 10 May 2016 05:52:58 PM CST
     6  ************************************************************************/
     7  
     8 /*************************************************************************
     9     
    10     Bulb Switcher
    11     
    12     There are n bulbs that are initially off. You first turn on all the bulbs. 
    13     Then, you turn off every second bulb. On the third round, you toggle every third bulb 
    14     (turning on if it's off or turning off if it's on). 
    15     For the ith round, you toggle every i bulb. For the nth round, you only toggle the last bulb. 
    16     Find how many bulbs are on after n rounds.
    17 
    18     Example:
    19 
    20     Given n = 3. 
    21 
    22     At first, the three bulbs are [off, off, off].
    23     After first round, the three bulbs are [on, on, on].
    24     After second round, the three bulbs are [on, off, on].
    25     After third round, the three bulbs are [on, off, off]. 
    26 
    27     So you should return 1, because there is only one bulb is on.
    28 
    29  ************************************************************************/
    30 
    31 #include <stdio.h>
    32 
    33 int bulbSwitch( int n )
    34 {
    35     int i;
    36     while( i*i <= n )
    37     {
    38         i++;
    39     }
    40     return i-1;
    41 }
    42 
    43 int main()
    44 {
    45     int n = 5;
    46     int ret = bulbSwitch(n);
    47     printf("%d
    ", ret);
    48     return 0;
    49 }
  • 相关阅读:
    方法要求ref object参数, 如果传递double值?
    注册表获取exe位置+ Process类启动exe+参数让exe打开指定文件
    ArcEngine 实现SurfaceAnalysis中的Cut/Fill功能
    ArcEngine 3D extension has not been enabled .
    ArcEngine 实现 SurfaceAnalysis的Area/Volumn功能
    安装部署程序,将安装目录写入注册表
    About Death _Island
    73 Left(Lake DT) . Neophocaena phoconoides(江豚) 20120419
    判断是否安装客户端,没有安装则进行下载
    ArcEngine 没有Esri.ArcGis.GeoAnalyst 命名空间
  • 原文地址:https://www.cnblogs.com/Juntaran/p/5479107.html
Copyright © 2011-2022 走看看