面试题一,面试题
面试题一,面试题
最近在网上看见一道面试题,随手做了一下,也作为我开始写博客的第一篇开始。
因为我最近在学习PHP,所以我就用PHP来解决它,不过天下语言是一家,其他的语言也可参照思想。题目比较简单,如下:
大厅里有100盏灯,每盏灯都编了号码,分别为1-100。每盏灯由一个开关来控制。(开关按一下,灯亮,再按一下灯灭。开关的编号与被控制的灯相同。)开始时,灯是全灭的。现在按照以下规则按动开关。
第一次,将所有的灯点亮。
第二次,将所有2的倍数的开关按一下。
第三次,将所有3的倍数的开关按一下。
以此类推。第N次,将所有N的倍数的开关按一下。
问第100次按完以后,大厅里还有几盏灯是亮的。
方法如 下:
<span> 1</span> <?<span>php </span><span> 2</span> <span> 3</span> <span>//</span><span>totle:总共的灯盏数,times:按动开关的次数</span> <span> 4</span> <span>function</span> switchLight(<span>$totle</span>,<span>$times</span><span>){ </span><span> 5</span> <span>//</span><span>定义开关打开和关闭的状态属性</span> <span> 6</span> <span>$on</span>=1<span>; </span><span> 7</span> <span>$off</span>=-1<span>; </span><span> 8</span> <span>//</span><span>定义一个按动开关的动作</span> <span> 9</span> <span>$oc</span>=-1<span>; </span><span>10</span> <span>//</span><span>建立一个数组,动态存储灯盏数目,并初始化状态</span> <span>11</span> <span>$lights</span>=<span>array</span><span>(); </span><span>12</span> <span>for</span>(<span>$i</span>=1;<span>$i</span><=<span>$totle</span>;<span>$i</span>++<span>){ </span><span>13</span> <span>$lights</span>[<span>$i</span>]=<span>$off</span><span>; </span><span>14</span> <span> } </span><span>15</span> <span>//</span><span>判断没有按动开关的情况</span> <span>16</span> <span>if</span>(<span>$times</span>==0<span>){ </span><span>17</span> <span>return</span> 0<span>; </span><span>18</span> <span> } </span><span>19</span> <span>//</span><span>循环判断,并按动开关</span> <span>20</span> <span>for</span>(<span>$j</span>=1;<span>$j</span><=<span>$times</span>;<span>$j</span>++<span>){ </span><span>21</span> <span>for</span>(<span>$k</span>=1;<span>$k</span><=<span>$totle</span>;<span>$k</span>++<span>){ </span><span>22</span> <span>if</span>(!(<span>$k</span>%<span>$j</span><span>)) </span><span>23</span> <span>$lights</span>[<span>$k</span>]*=<span>$oc</span><span>; </span><span>24</span> <span> } </span><span>25</span> <span> } </span><span>26</span> <span>//</span><span>遍历出所有为on的灯,并存入新数组</span> <span>27</span> <span>$newLights</span>=<span>array</span><span>(); </span><span>28</span> <span>for</span>(<span>$r</span>=1;<span>$r</span><=<span>$totle</span>;<span>$r</span>++<span>){ </span><span>29</span> <span>if</span>(<span>$lights</span>[<span>$r</span>]==<span>$on</span><span>){ </span><span>30</span> <span>$newLights</span>[]=<span>$r</span><span>; </span><span>31</span> <span> } </span><span>32</span> <span> } </span><span>33</span> <span>return</span> <span>$newLights</span><span>; </span><span>34</span> <span>35</span> <span> } </span><span>36</span> <span>37</span> <span>$newLights</span>=switchLight(100,100<span>); </span><span>38</span> <span>echo</span> "结果有".<span>count</span>(<span>$newLights</span>)."盏灯亮,具体如下:"<span>; </span><span>39</span> <span>foreach</span>(<span>$newLights</span> <span>as</span> <span>$light</span><span>){ </span><span>40</span> <span>echo</span> <span>$light</span><span>; </span><span>41</span> <span>echo</span> "\n"<span>; </span><span>42</span> <span> } </span><span>43</span> ?>
有更好的方法,会后续更新。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk menyediakan permulaan papan kekunci pada papan induk Gigabyte Pertama, jika ia perlu menyokong permulaan papan kekunci, ia mestilah papan kekunci PS2! ! Langkah-langkah tetapan adalah seperti berikut: Langkah 1: Tekan Del atau F2 untuk memasuki BIOS selepas but, dan masukkan mod Lanjutan (Lanjutan) BIOS Papan induk biasa masukkan mod EZ (Mudah) papan induk secara lalai untuk menekan F7 untuk beralih ke mod Lanjutan papan induk siri ROG masukkan BIOS secara lalai (kami menggunakan Bahasa Cina Mudah untuk menunjukkan) Langkah 2: Pilih untuk - [Lanjutan] - [Pengurusan Kuasa Lanjutan (APM)] Langkah 3: Cari pilihan [Bangun dengan papan kekunci PS2] Langkah 4: Pilihan lalai ini Dilumpuhkan Selepas menarik ke bawah, anda boleh melihat tiga pilihan tetapan yang berbeza, termasuk menekan [bar ruang] untuk menghidupkan komputer dan menekan butang kumpulan.

1. Pemproses Apabila memilih konfigurasi komputer, pemproses adalah salah satu komponen yang paling penting. Untuk permainan seperti CS, prestasi pemproses secara langsung mempengaruhi kelancaran dan kelajuan tindak balas permainan. Adalah disyorkan untuk memilih pemproses siri Intel Core i5 atau i7 kerana ia mempunyai keupayaan pemprosesan berbilang teras yang berkuasa dan frekuensi tinggi, dan dengan mudah boleh menampung keperluan CS yang tinggi. 2. Kad grafik Kad grafik merupakan salah satu faktor penting dalam prestasi permainan. Untuk permainan menembak seperti CS, prestasi kad grafik secara langsung mempengaruhi kejelasan dan kelancaran skrin permainan. Adalah disyorkan untuk memilih siri NVIDIA GeForce GTX atau kad grafik siri AMD Radeon RX Mereka mempunyai keupayaan pemprosesan grafik yang sangat baik dan output kadar bingkai yang tinggi, dan boleh memberikan pengalaman permainan yang lebih baik

Bermula dari awal, saya akan mengajar anda langkah demi langkah cara memasang Flask dan cepat membina blog peribadi Sebagai seorang yang suka menulis, mempunyai blog peribadi adalah sangat penting. Sebagai rangka kerja Web Python yang ringan, Flask boleh membantu kami membina blog peribadi yang ringkas dan berfungsi sepenuhnya dengan cepat. Dalam artikel ini, saya akan bermula dari awal dan mengajar anda langkah demi langkah cara memasang Flask dan membina blog peribadi dengan cepat. Langkah 1: Pasang Python dan pip Sebelum bermula, kita perlu memasang Python dan pi terlebih dahulu

Blog, juga diterjemahkan sebagai log web, blog atau blog, adalah laman web yang biasanya diuruskan oleh individu dan menyiarkan artikel baharu dari semasa ke semasa. Jadi bagaimana untuk menyediakan blog? Apakah sistem blog PHP? Sistem blog manakah yang terbaik untuk digunakan? Di bawah, laman web PHP Cina akan meringkaskan dan berkongsi sepuluh sistem blog PHP sumber terbuka teratas dengan anda.

Urutan talian sambungan SPDIFOUT pada papan induk Baru-baru ini, saya menghadapi masalah mengenai urutan pendawaian wayar. Saya menyemak dalam talian Beberapa maklumat mengatakan bahawa 1, 2, dan 4 sepadan dengan keluar, +5V, dan tanah manakala maklumat lain mengatakan bahawa 1, 2, dan 4 sepadan dengan keluar, tanah dan +5V. Cara terbaik ialah menyemak manual papan induk anda Jika anda tidak menemui manual, anda boleh menggunakan multimeter untuk mengukurnya. Cari tanah dahulu, kemudian anda boleh menentukan susunan pendawaian yang lain. Cara menyambung pendawaian VDG papan induk Apabila menyambungkan pendawaian VDG papan induk, anda perlu palamkan satu hujung kabel VGA ke antara muka VGA monitor dan hujung satu lagi ke antara muka VGA kad grafik komputer. Sila berhati-hati untuk tidak memasukkannya ke dalam port VGA motherboard. Setelah disambungkan, anda boleh

Dengan perkembangan Internet, blog telah menjadi platform untuk lebih ramai orang berkongsi kehidupan, pengetahuan dan idea mereka. Jika anda juga ingin membuat blog sendiri, maka artikel ini akan memperkenalkan cara menggunakan PHP dan SQLite untuk membuat blog yang mudah. Tentukan keperluan Sebelum mula membuat blog, kita perlu tentukan fungsi yang ingin kita capai. Contohnya: Buat catatan blog Edit catatan blog Padam catatan blog Paparkan senarai catatan blog Paparkan butiran catatan blog Pengesahan pengguna dan kawalan kebenaran Pasang PHP dan SQLite Kita perlu memasang PHP dan S

Glodon Software ialah sebuah syarikat perisian yang memfokuskan pada bidang pemformatan bangunan. Produknya digunakan secara meluas dalam semua aspek reka bentuk seni bina, pembinaan dan operasi. Oleh kerana fungsi kompleks dan volum data yang besar perisian Glodon, ia memerlukan konfigurasi komputer yang tinggi. Artikel ini akan menghuraikan cadangan konfigurasi komputer Perisian Glodon dari banyak aspek untuk membantu pembaca memilih pemproses konfigurasi komputer yang sesuai memerlukan pengiraan dan pemprosesan data yang besar apabila melakukan reka bentuk seni bina, simulasi dan operasi lain kerana pemproses lebih tinggi. Adalah disyorkan untuk memilih pemproses berbilang teras, frekuensi tinggi, seperti siri Intel i7 atau siri AMD Ryzen. Pemproses ini mempunyai kuasa pengkomputeran yang kuat dan keupayaan pemprosesan berbilang benang, dan boleh memenuhi keperluan perisian Glodon dengan lebih baik. Memori Memori menjejaskan pengkomputeran

Bagaimana untuk menyelesaikan masalah jQueryAJAX ralat 403? Apabila membangunkan aplikasi web, jQuery sering digunakan untuk menghantar permintaan tak segerak. Walau bagaimanapun, kadangkala anda mungkin menghadapi kod ralat 403 apabila menggunakan jQueryAJAX, menunjukkan bahawa akses dilarang oleh pelayan. Ini biasanya disebabkan oleh tetapan keselamatan bahagian pelayan, tetapi terdapat cara untuk mengatasinya. Artikel ini akan memperkenalkan cara menyelesaikan masalah ralat jQueryAJAX 403 dan memberikan contoh kod khusus. 1. membuat
