Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari

Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari

王林
王林ke hadapan
2023-09-12 15:21:12607semak imbas

Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari

Untuk menyemak sama ada terdapat 1 berturut-turut dalam nombor binari, anda perlu menyemak 0 dan 1.

Mula-mula, tetapkan tatasusunan bool untuk 0 dan 1 iaitu palsu dan benar -

bool []myArr = {false, true, false, false, false, true, true, true};

Untuk 0, tetapkan kiraan kepada 0 -

if (myArr[i] == false)
   count = 0;

Untuk 1, naikkan kiraan dan tetapkan hasilnya. Kaedah Max() mengembalikan dua nombor yang lebih besar -

count++;
res = Math.Max(res, count);

Contoh

Berikut ialah contoh menyemak jika terdapat K 1 berturut-turut dalam nombor binari -

Demonstrasi Langsung

using System;
class MyApplication {
   static int count(bool []myArr, int num) {
      int myCount = 0, res = 0;
      for (int i = 0; i < num; i++) {
         if (myArr[i] == false)
            myCount = 0;
         else {
            myCount++;
            res = Math.Max(res, myCount);
         }
      }
      return res;
   }
   public static void Main() {
      bool []myArr = {false, true, false, false, false, true, true, true};
      int num = myArr.Length;
      Console.Write("Consecutive 1&#39;s = "+count(myArr, num));
   }
}

Output

Consecutive 1&#39;s = 3

Atas ialah kandungan terperinci Program C# untuk menyemak sama ada terdapat K berturut-turut 1 dalam nombor binari. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam