Sobes.tech

Data Analyst

Dva zatvorenika u različitim ćelijama bacaju novčić i, videći samo rezultat svog novčića, moraju da kažu rezultat novčića svog suseda. Ako bar jedan pogodi, obojica će biti oslobođeni; ako obojica pogreše, biće ubijeni. Koju strategiju odgovora treba da izaberu da bi preživeli sa 100% verovatnoće?

Middle
173

Kako tačno izmeriti 4 litra koristeći posude od 3 i 5 litara i neograničen izvor vode?

Middle
133

Предложите алгоритам који, на основу података о саобраћају позива и геолокацији корисника свака 15 минута, одређује да ли двоје корисника живе заједно.

Middle
131

Koji simbol treba navesti posle SELECT da bi se izabrale sve kolone?

Middle
131

Da li poznajete matematičku statistiku i da li ste primenjivali A/B testove u praksi? Koje vrste srednjih vrednosti poznajete?

Middle
128

Kako ostaviti samo kategorije čiji je ukupni prihod veći od 100 rublji?

Middle
127

Да ли сте икада радили са Git-ом?

Middle
121

Да ли ће резултати које враћају следеће упите бити различити? 1 select * from A left join B on A.id = B.id and B.val = 'A' 2 select * from A left join B on A.id = B.id where B.val = 'A'

Middle
114

Prikazane su tabele product (informacije o tome kojoj kategoriji pripada proizvod u određenom intervalu datuma) i sale (fakti o prodaji proizvoda sa datumom prodaje, cenom po jedinici i količinom kupljenih jedinica): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Proizvod 1|Kategorija 1|[phone]|[phone]| |Proizvod 1|Kategorija 2|[phone]|[phone]| |Proizvod 2|Kategorija 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Proizvod 1|10 |5 | |[phone]|Proizvod 1|15 |2 | |[phone]|Proizvod 4|15 |2 | |[phone]|Proizvod 3|15 |2 | |[phone]|Proizvod 2|10.9 |300| |[phone]|Proizvod 1|12.7 |7 | Potrebno je napisati upit koji vraća ukupni prihod po svakoj kategoriji: |prod_cat |total_amt| |----------|---------| |Kategorija 1|80 | |Kategorija 2|84 | |Kategorija 3|270 |

Middle
108

Predložite algoritam za određivanje dana rođenja pretplatnika, imajući samo dnevnik poziva i SMS-ova: dolazni i odlazni brojevi, datum-vreme, trajanje i tip događaja.

Middle
107

Kako svrstati prodaju proizvoda koji nisu ušli ni u jednu kategoriju, u kategoriju „Ostalo“?

Middle
106

Potrebno je napisati upit koji će vratiti ukupni prihod po svakoj kategoriji: |prod_cat |total_amt | |Kategorija 1|80 | |Kategorija 2|84 | |Kategorija 3|270 | Postoji tabela sa pretplatnicima sa zapisima koji su stigli u različito vreme. Datum učitavanja zapisa je definisan u polju raw_dt: select * from abnt |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|4375 |4979 |[phone]| |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|5842 |589783|[phone]| |2 |[phone]|4563 |5326 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|5495 |7485 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Potrebno je napisati upit koji će vratiti pretposlednji učitani zapis po ključu id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Postoji tabela sa istorijom promena pretplatnika. Svaki zapis je važeći od valid_from_dt do valid_to_dt. Ako je zapis zatvoren, sledeći počinje istog dana. Za svakog pretplatnika, postoji samo jedan aktivan zapis u opsegu [valid_from_dt, valid_to_dt]. select * from abnt |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |1 |[phone] |[phone] |[phone]|4375 |4979 | |2 |[phone] |[phone] |[phone]|5842 |589783| |2 |[phone] |[phone] |[phone]|4563 |5326 | |3 |[phone] |[phone] |[phone]|4563 |0832 | Potrebno je napisati upit koji će vratiti zapise sa netačnim datumom zatvaranja: |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |2 |[phone] |[phone] |[phone]|5842 |4979 | |2 |[phone] |[phone] |[phone]|4563 |5326 | s ranked as ( select msisdn, tarif_plan_id, account_id, raw_dt, row_number() over (partition by id order by raw_dt desc) as rn ) select id, msisdn, tarif_plan_id, account_id, raw_dt from ranked where rn = 2 order by id

Middle
103

U sobi su tri sijalice i tri prekidača napolju. Svi su isključeni, a u sobu se može ući samo jednom. Kako odrediti koji prekidač upravlja svakom sijalicom?

Middle
99

Потребно је написати упит који ће вратити претпоследњи учитани запис по кључу id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Постоји табела претплатника са историјом измена. Сваки запис за претплатника важи у периоду од valid_from_dt до valid_to_dt. Ако је један запис затворен, следећи почиње у истом дану. За сваког претплатника треба да постоји само један активан запис у интервалу [valid_from_dt, valid_to_dt]. select * from abnt |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |4375 |4979 | |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 | |2 |[phone] |[phone] |[phone] |4563 |0832 | Потребно је написати упит који ће вратити записе са нетачним датумом затварања. |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 |

Middle
83