Maison >développement back-end >Tutoriel C#.Net >Partagez une question d'entretien logique et voyez si vous pouvez y répondre correctement !
Cet article partagera avec vous une question d'entretien logique (avec analyse) dont la mauvaise réponse s'est répandue partout sur Internet. Vous pouvez l'analyser par vous-mêmes pour voir si vous pouvez y répondre correctement !
100 personnes ont répondu correctement à cinq questions, 81 personnes ont répondu correctement à la première question, 91 personnes ont répondu correctement à la deuxième question, 85 personnes ont répondu correctement à la troisième question, 79 personnes ont répondu correctement à la quatrième question et 74 les gens ont répondu correctement à la cinquième question.
Ceux qui répondent correctement à trois questions ou plus sont considérés comme ayant réussi. Alors, combien de ces 100 personnes ont au moins réussi ?
Considérez d'abord s'il n'y a que deux questions AB et 100 personnes, la première réaction est d'utiliser une méthode définie.
Il n'y a que les 3 situations ci-dessus au total. La première est illégale si le nombre de personnes est supérieur à 100, il n'y a donc que les 2 dernières situations.
Les conclusions suivantes peuvent être tirées :
Il y a au moins 72 personnes et un maximum de 81 personnes qui ont répondu correctement aux deux questions AB en même temps
Il y a un maximum de 9 personnes et un minimum de 0 personne qui s'est trompée aux deux questions AB en même temps.
Il semble que nous ayons trouvé le modèle, nous allons donc élargir davantage l'échelle des données selon cette idée et considérer les trois questions ABC.
Considérez d'abord la relation entre chacune des deux questions.
Synthétisez la relation entre les trois questions. Attendez, cela semble un peu compliqué. Ce n'est pas une complexité linéaire. Désolé, le QI du petit K est un peu insuffisant et il est autiste.
Little K est-il prêt à abandonner ? NON, ne dites jamais abandonner. Parfois, ne vous heurtez pas au mur et ne regardez jamais en arrière. D'après les nombreuses années d'expérience de Xiao K, si le modèle que vous trouvez n'est pas évident ou très compliqué, cela signifie généralement que vous êtes sur la mauvaise voie, vous devriez donc envisager de changer de modèle. façon de penser en ce moment.
Toutes les pensées ci-dessus sont positives, mais c'est difficile à gérer, vous pouvez penser à l'envers.
Tant que vous posez 3 mauvaises questions, vous échouerez. Il y a 19+9+15+21+26=90 mauvaises questions au total puis 90/3=30, alors au maximum 30 personnes échoueront. , donc au moins 70 personnes échoueront, parfait, c'est fini.
Attendre me semble toujours un peu bizarre, non pas parce que c'est trop simple, mais parce que mon intuition concernant la quantité d'informations me dit que cette solution ignore beaucoup d'informations.
Seul le nombre total est utilisé, mais la répartition du nombre de mauvaises questions pour les 5 questions n'est pas utilisée. Ensuite, dites-vous simplement qu'il y a 90 erreurs au total. Pourquoi devez-vous indiquer le nombre spécifique séparément ? Est-ce vraiment une information trompeuse ?
Selon la solution ci-dessus, puisque vous ne vous souciez pas de la distribution spécifique, utilisez la réflexion extrême pour construire des données spéciales. Par exemple, toutes les mauvaises questions sont concentrées dans la question A.
Il y a encore 90 questions fausses au total, mais tout le monde a eu 4 bonnes questions, donc 100 personnes auraient dû réussir, et elles sont à nouveau autistes.
En ce moment, je pense que quelqu'un est sur le point de sauter.
Petit K : Ce que tu as dit a du sens, mais je suis sans voix.
Ne vous faites pas de conneries d'abord, réfléchissons-y plus en détail. Ce contre-exemple illustre un point : les mauvaises questions ne peuvent pas être partagées de manière égale à volonté, alors commençons par ce point.
Premier regard sur la répartition des erreurs.
Comment diffuser ces mauvaises questions au plus grand nombre.
Pour faciliter l'analyse, écrivons d'abord un exemple simple. Par exemple, la distribution des mauvaises questions est 7, 8, 9, 10 et 11.
La première allocation :
Attribuer A, B, C à 7 personnes
Attribuer C, D, E à 2 personnes
Attribuer B, D, E à 1 personne
A un total de 7+2+1=10 personnes peuvent être attribuées.
Le deuxième type, la priorité est donnée aux B, C et D, soit un total de 11 personnes.
La troisième option est de donner la priorité aux C, D et E, soit un total de 12 personnes.
À ce stade, nous avons découvert le modèle : donner la priorité aux 3 plus grandes chaînes attirera plus de monde. Au cours du processus d'attribution, les trois commandes les plus importantes changeront de manière dynamique, ce qui inspire l'idée de cupidité.
Triez les mauvaises questions de la plus grande à la plus petite ;
Attribuez les 3 premières à une personne à chaque fois, puis réorganisez.
Répétez les étapes ci-dessus jusqu'à ce que finalement aucun nombre autre que 0 ne puisse être trouvé, c'est-à-dire qu'il devienne X,0,0,0,0 ou X,Y,0,0,0.
Problème de conversion : Il y a 5 rectangles, l'ordre peut être arbitraire. Pour découper N rectangles d'une largeur de 3, la superposition globale doit être la plus haute possible. Quel est le plus haut
Vous le goûtez, vous le goûtez soigneusement, est-ce le même problème ? Alors commencez par le top 3 et réduisez-le, haha.
Retour à la question initiale, combien y a-t-il de personnes au moins ? Réussissez les résultats des tests de code.
8.1 Implémentation du code
int main() { int a[5], ans = 0; for (int i = 0; i < 5; ++i) { cin >> a[i]; } sort(a, a + 5, compare); while (a[2] > 0) { a[0]--; a[1]--; a[2]--; sort(a, a + 5, compare); ans++; for (int i = 0; i < 5; ++i) { cout << a[i] << " "; } cout << endl; } cout << "ans=" << ans << endl; return 0; }
8.2 Test de données
25 20 18 15 9 24 19 17 15 9 23 18 16 15 9 22 17 15 15 9 21 16 15 14 9 20 15 14 14 9 19 14 14 13 9 18 13 13 13 9 17 13 12 12 9 16 12 12 11 9 15 11 11 11 9 14 11 10 10 9 13 10 10 9 9 12 9 9 9 9 11 9 9 8 8 10 8 8 8 8 9 8 8 7 7 8 7 7 7 7 7 7 7 6 6 6 6 6 6 6 6 6 5 5 5 5 5 5 5 4 5 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 1 2 1 1 1 1 1 1 1 0 0 0 0 0 0 0 ans=30
Donc, si au plus 30 personnes échouent, alors au moins 70 personnes réussissent. Bien que les réponses soient les mêmes, la façon de penser est la même. différent.
Même si cela semble être une question simple, vous devriez y réfléchir plus profondément, peut-être trouverez-vous une conclusion différente. Et ne croyez pas facilement l'analyse des autres. 90% des internautes se trompent sur ce problème. Vous pouvez également vérifier si mon analyse est rigoureuse. Si vous avez des questions, veuillez laisser un message pour commentaires.
Recommandations associées : "Tutoriel vidéo sur le langage C", "Tutoriel vidéo PHP"
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!