


Comptez le nombre d'éléments dans le tableau. Le nombre de 1 dans sa représentation binaire est un multiple de K.
Les bits définis sont la représentation binaire de 0 et 1. Ce numéro 1 est appelé bit de réglage dans un ordinateur. Prenons un exemple pour comprendre le calcul des bits définis -
Prenons un exemple pour comprendre le calcul du setbit -
Le bit défini de l'entier 96 est calculé comme suit :

Supposons que nous voulions définir les bits sur la somme de 96. Ainsi, selon la représentation ci-dessus, nous définirons le bit 1 sur ces éléments du tableau et leur somme sera de 96. De cette façon nous formerons 2 groupes de bits. Ainsi, si nous définissons la valeur K sur 2, les bits de réglage de 96 en sont des multiples.
Dans ce programme, nous allons résoudre le problème de comptage d'éléments de tableau où le nombre de bits définis est un multiple de K.
Algorithme
Nous utiliserons un fichier d'en-tête nommé 'bits/stdc++.h' pour démarrer le programme, qui contient toutes les bibliothèques de modèles standard de C++.
-
Nous créons une définition de fonction appelée ‘find_bitcount’, qui accepte trois paramètres, arr, n et k, et est définie comme suit −
arr[] - Obtenez l'entrée du tableau à partir de la fonction principale du tableau.
n − longueur du tableau
k - Vérifie la divisibilité du nombre de bits avec le réglage.
Cela comptera le nombre total de bits définis dans les éléments du tableau.
Nous stockons ensuite ‘0’ dans la variable ‘ans’, qui gardera une trace du nombre de nombres qui satisfont à la condition.
Nous démarrons la boucle for pour parcourir chaque élément et stocker l'élément du tableau, c'est-à-dire 'arr[i]' dans la variable 'x' qui satisfait la condition dans la boucle while suivante pour vérifier les paramètres de bits totaux Conditions de comptage . De cette façon, la fonction initialise ‘x’ à la valeur de l’élément du tableau.
Ensuite, la variable ‘setBitsCount’ est initialisée à ‘0’, ce qui gardera une trace des bits définis de l’élément actuel du tableau.
Ensuite, nous créons une boucle while pour vérifier si x (l'élément du tableau stocké dans x) est supérieur à 0 et procédons comme suit :
setBitsCount += x & 1 - Utilisez l'opérateur ET au niveau du bit dans une boucle et 1 pour déterminer si le bit le moins significatif de x est 1.
x = x >> 1 − Si le résultat est 1, augmentez le nombre de chiffres défini de 1. Utilisez ensuite l'opérateur >> dans la boucle pour décaler x 1 bit vers la droite afin d'éliminer le bit le moins significatif.
Maintenant, utilisez l'instruction if pour vérifier si 'setBitsCount' est divisible par 'k', utilisez l'opérateur '%' et est égal à '0', puis l'élément actuel du tableau remplit la condition et incrémente la variable 'ans' par '1'.
Après avoir traité toutes les conditions ci-dessus, la fonction renvoie la valeur de ‘ans’, qui définit le nombre total défini de chiffres des éléments du tableau.
Allez-y, démarrez la fonction principale et déclarez tous les éléments du tableau. Nous initialisons ensuite la variable ‘n’ pour trouver la taille du tableau, et initialisons la variable ‘K’ à ‘2’, qui vérifiera si l’élément du tableau est un multiple de K.
Enfin, dans l'instruction print, nous appelons la définition de fonction nommée 'find_bitcount()' et obtenons le résultat.
Exemple
Dans ce programme, nous implémenterons le comptage d'un élément de tableau dont le bit défini est un multiple de K.
#include <bits/stdc++.h> #include <bits/stdc++.h> using namespace std; // Function to find the count of numbers int find_bitcount(int arr[], int n, int k) { int ans = 0; for (int i = 0; i < n; i++) { int x = arr[i]; int setBitsCount = 0; // Calculate the set-bits count of the element x while (x > 0) { setBitsCount += x & 1; x = x >> 1; } // Check if the setbits count // is divisible by K if (setBitsCount % k == 0) ans++; } return ans; } int main() { int arr[] = { 6, 845, 4, 168, 7896 }; int n = sizeof(arr) / sizeof(arr[0]); int K = 2; cout << "There are "<<find_bitcount(arr, n, K)<<" array element whose setbits are in a multiple of K"; return 0; }
Sortie
There are 3 array element whose setbits are in a multiple of K
Conclusion
Nous avons exploré le concept de nombre d'éléments de tableau, où le nombre de chiffres est un multiple de K. Dans ce programme, une fonction est définie pour calculer le nombre total d'éléments d'un nombre défini d'éléments du tableau. Nous observons ensuite comment le nombre défini de bits est décalé via l'opérateur >> et utilisons une instruction conditionnelle pour vérifier combien d'éléments du tableau ont été transmis au nombre défini de bits. Enfin, nous imprimons simplement les résultats.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

C Structure des données du langage: La représentation des données de l'arborescence et du graphique est une structure de données hiérarchique composée de nœuds. Chaque nœud contient un élément de données et un pointeur vers ses nœuds enfants. L'arbre binaire est un type spécial d'arbre. Chaque nœud a au plus deux nœuds enfants. Les données représentent StrustReenode {intdata; structTreenode * gauche; structureReode * droite;}; L'opération crée une arborescence d'arborescence arborescence (prédécision, ordre dans l'ordre et ordre ultérieur) Le nœud d'insertion de l'arborescence des arbres de recherche de nœud Graph est une collection de structures de données, où les éléments sont des sommets, et ils peuvent être connectés ensemble via des bords avec des données droites ou peu nombreuses représentant des voisins.

Cet article explique la bibliothèque de modèles standard C (STL), en se concentrant sur ses composants principaux: conteneurs, itérateurs, algorithmes et fonctors. Il détaille comment ces interagissent pour permettre la programmation générique, l'amélioration de l'efficacité du code et de la lisibilité

Cet article détaille l'utilisation efficace de l'algorithme STL en c. Il met l'accent sur le choix de la structure des données (vecteurs vs listes), l'analyse de la complexité des algorithmes (par exemple, STD :: Srieur vs std :: partial_sort), l'utilisation des itérateurs et l'exécution parallèle. Pièges communs comme

Cet article détaille la gestion efficace des exceptions en C, couvrant les mécanismes d'essai, de capture et de lancement. Il met l'accent sur les meilleures pratiques comme RAII, en évitant les blocs de capture inutiles et en enregistrant des exceptions pour un code robuste. L'article aborde également Perf

L'article discute de l'utilisation efficace des références de référence en C pour la sémantique de déplacement, le transfert parfait et la gestion des ressources, mettant en évidence les meilleures pratiques et les améliorations des performances. (159 caractères)

La vérité sur les problèmes de fonctionnement des fichiers: l'ouverture des fichiers a échoué: les autorisations insuffisantes, les mauvais chemins de mauvais et les fichiers occupés. L'écriture de données a échoué: le tampon est plein, le fichier n'est pas écrivatif et l'espace disque est insuffisant. Autres FAQ: traversée de fichiers lents, encodage de fichiers texte incorrect et erreurs de lecture de fichiers binaires.

Les plages de c 20 améliorent la manipulation des données avec l'expressivité, la composibilité et l'efficacité. Ils simplifient les transformations complexes et s'intègrent dans les bases de code existantes pour de meilleures performances et maintenabilité.

L'article discute de l'utilisation de Move Semantics en C pour améliorer les performances en évitant la copie inutile. Il couvre la mise en œuvre de constructeurs de déplace
