Notifiche
Cancella tutti

[Risolto] Problemi in azienda

  

0

Supponiamo che la MIcrosoft Corportion stia cercando dei nuovi dipendenti per sviluppare un nuovo software di intelligenza artificiale. L'azienda specifica, in un bando di ammissione ai test, che le persone interessate a parteciparvi devono saper programmare obbligatoriamente in Java o in C. 

Dopo i risultati dei test e dei relativi colloqui, la Microsoft ha deciso di assumere un tot. di persone. Dai colloqui di lavoro è emerso che le persone risultavano avere le seguenti competenze : 

 

$1.$  $Programmatori$ $C$ $=$ $68$

$2.$  $Programmatori$ $Java$ $=$ $45$

$3.$ $Programmatori$ $Java$ $e$ $C$ $=$ $23$

 

Per lo sviluppo del software l'azienda ha deciso di partizionare l'intero insieme di programmatori in gruppi da $5$ persone. La domanda al quesito è :

 

$Quanti$ $programmatori$ $ci$ $sono$ $in$ $tutto$$?$  $E$ $quanti$ $gruppi$ $?$

Spoiler
Soluzione

La soluzione al quesito non è molto diversa da come l'avete immaginata, infatti supponiamo di avere $3$ insiemi di cardinalità diverse ( con cardinalità indichiamo il numero di elementi di un insieme e la indichiamo così : $|$ $S$ $|$ ) suddivisi in questo modo :

$|$ $A$ $|$ $=$ $68$  $\bigl($ $insieme$ $dei$ $programmatori$ $C$ $\bigr)$

$|$ $B$ $|$ $=$ $45$  $\bigl($ $insieme$ $dei$ $programmatori$ $Java$ $\bigr)$

$|$ $C$ $|$ $=$ $23$  $\bigl($ $insieme$ $dei$ $programmatori$ $Java$ $e$ $C$ $\bigr)$

Risulterà chiaro che $C$ $=$ $A$ $\cap$ $B$. Quindi in $C$ vi appartengono tutti quei programmatori che sanno programmare in entrambi i linguaggi. Ora supponiamo di calcolare l'insieme di tutti i programmatori quindi calcolare $|$ $A$ $\cup$ $B$ $|$. A tutti verrà in mente di calcolare, sicuramente, $|$ $A$ $|$ $+$ $|$ $B$ $|$ come è noto che sia. Ma cerchiamo di capire meglio perché questa formula è sbagliata. 

Possiamo ragionare per assurdo e supporre che la formula precedente sia valida. Ragionando in formule avremo :

$|$ $A$ $\cup$ $B$ $|$ $=$ $|$ $A$ $|$ $+$ $|$ $B$ $|$ 

ma ciò equivale a dire che l'insieme al primo membro e la somma degli insiemi al secondo hanno esattamente la stessa cardinalità. Proviamo a contare elemento per elemento e vediamo che cosa accade.

In $|$ $A$ $\cup$ $B$ $|$ esisterà sicuramente un dipendente che sappia programmare soltanto in un linguaggio di programmazione e supponiamo di contare i primi $2$ dipendenti che sappiano programmare soltanto in $C$. Quindi avremo :

$|$ $A$ $\cup$ $B$ $|$ $=$  $|$ $A$ $|$ $+$ $|$ $B$ $|$ $\iff$ $2$ $=$ $2$ $+$ $0$ 

Dunque possiamo concludere che l'uguaglianza risulta essere verificata in questo esempio. Analoga situazione se prendessimo un dipendente programmatore Java. Proviamo a contare sia programmatori C che Java.

Supponiamo di contarne $1$. Dunque avremo :

$|$ $A$ $\cup$ $B$ $|$ $=$ $|$ $A$ $|$ $+$ $|$ $B$ $|$ $\iff$ $1$ $=$ $1$ $+$ $1$   $ma$   $1$ $\neq$ $2$

Ma per ipotesi la nostra formula $|$ $A$ $\cup$ $B$ $|$ $=$ $|$ $A$ $|$ $+$ $|$ $B$ $|$  risulta essere valida, dunque siamo giunti ad un assurdo. Ciò comporta che quest'ultima non sempre risolve i nostri problemi.

Proviamo a ragionare su quanto appena detto. Mettiamoci "nei panni" di un elemento di $x$ $\in$ $A$ $\cup$ $B$, ma ciò equivale a dire che $\bigl($ $x$ $\in$ $A$ $\bigr)$ $\lor$ $\bigl($ $x$ $\in$ $B$ $\bigr)$. Come abbiamo fatto vedere prima, quando $x$ $\not \in$ $A$ $\cap$ $B$ la formula risulta essere verificata. Dunque proviamo a vedere cosa succede quando consideriamo un elemento $x$ $\in$ $A$ $\cap$ $B$. Nel membro di sinistra quando contiamo tale elemento, come è noto che sia, viene contato una sola volta, ma nel membro di destra viene contato $2$ volte lo stesso elemento. Ma non ha alcun senso tutto ciò. Come possiamo risolvere questo problema?

Se a questo risultato sottraiamo $|$ $A$ $\cap$ $B$ $|$ $=$ $1$ otteniamo così l'uguaglianza. Dunque siamo sicuri che la formula, così ottenuta, risulta essere valida ogni qualvolta andiamo a pescare elementi nell’intersezione. Ma risulta esserlo anche per gli insiemi disgiunti dove l’intersezione non viene proprio considerata nell’equazione.

A tal fine possiamo concludere che per ogni possibile scelta di $A$, $B$, e $C$ la seguente uguaglianza risulta essere verificata :

 $($$*$$)$ $|$ $A$ $\cup$ $B$ $|$ $=$ $|$ $A$ $|$ $+$ $|$ $B$ $|$ $-$ $|$ $A$ $\cap$ $B$ $|$

Dunque la soluzione dell'esercizio è ora immediata. Per ipotesi sappiamo che :

$|$ $A$ $|$ $=$ $68$ $\land$

$|$ $B$ $|$ $=$ $45$ $\land$

$|$ $A$ $\cap$ $B$ $|$ $=$ $23$

con tale formula $($$*$$)$ risulta che :

$|$ $A$ $\cup$ $B$ $|$ $=$ $|$ $A$ $|$ $+$ $|$ $B$ $|$ $-$ $|$ $A$ $\cap$ $B$ $|$ $\iff$ $|$ $A$ $\cup$ $B$ $|$ $=$  $68$ $+$ $45$ $-$ $23$ $\iff$ $|$ $A$ $\cup$ $B$ $|$ $=$ $90$ 

In totale l'azienda Microsoft ha assunto $90$ dipendenti. 

Per rispondere alla seconda domanda basta risolvere una banale equazione di primo grado : 

$numero$ $gruppi$ $\cdot$ $x$ $=$ $numero$ $dipendenti$ $\iff$ $5x$ $=$ $90$ $\iff$ $x$ $=$ $18$ 

Quindi in conclusione avremo $90$ dipendenti e $18$ gruppi formati da $5$ persone.

 

 

Autore



0

 

90 programmatori

18 gruppi

 



0
1584448641638585258817



0

In totale 90:

-23 che conoscono entrambi i linguaggi;

-68-23=45 sono c;

-45-23=22 solo java;

Ci sono 90/5=18 gruppi






SOS Matematica

4.6
SCARICA