Dva väzňov v rôznych celách hádžu mincu a, vidia len výsledok svojej vlastnej mince, musia odhadnúť výsledok mince svojho suseda. Ak aspoň jeden uhádne, obaja sú prepustení; ak obaja urobia chybu, sú zabití. Akú stratégiu odpovedí by mali zvoliť, aby prežili s 100% pravdepodobnosťou?
Data Analyst
Navrhnite algoritmus, ktorý na základe údajov o telefonickom provoze a geolokácii odberateľov každých 15 minút určí, či dvaja odberatelia žijú spolu.
Ako presne odmeriti 4 litre s pomočjo posod 3 in 5 litrov ter neomejenega vira vode?
Poznáte matematickú štatistiku a ste v praxi použili A/B testovanie? Aké druhy priemerov poznáte?
Aký symbol je potrebné uviesť po SELECT na výber všetkých stĺpcov?
Ako nechať len kategórie, ktorých celkový príjem je viac ako 100 rubľov?
Pracovali ste niekedy s Gitom?
Budú sa výsledky vrátené nasledujúcimi dotazmi líšiť? 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'
Navrhnite algoritmus na určenie dňa narodenia odberateľa, majúc len záznamy hovorov a SMS: príjmové a odchádzajúce čísla, dátum-čas, dĺžka a typ udalosti.
Predstavené sú tabuľky product (informácie o tom, do ktorej kategórie patrí produkt v danom časovom intervale) a sale (fakty o predaji produktu s dátumom predaja, cenou za jednotku a množstvom zakúpených jednotiek): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Produkt 1|Kategória 1|[phone]|[phone]| |Produkt 1|Kategória 2|[phone]|[phone]| |Produkt 2|Kategória 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Produkt 1|10 |5 | |[phone]|Produkt 1|15 |2 | |[phone]|Produkt 4|15 |2 | |[phone]|Produkt 3|15 |2 | |[phone]|Produkt 2|10.9 |300| |[phone]|Produkt 1|12.7 |7 | Je potrebné napísať dopyt, ktorý vráti celkový príjem pre každú kategóriu: |prod_cat |total_amt| |----------|---------| |Kategória 1|80 | |Kategória 2|84 | |Kategória 3|270 |
Szükséges írni egy lekérdezést, amely visszaadja az egyes kategóriák összbevételét: |prod_cat |total_amt | |Kategória 1|80 | |Kategória 2|84 | |Kategória 3|270 | Létezik egy előfizetőket tartalmazó tábla, amelybe különböző időpontokban érkező rekordok kerültek. A rekord feltöltési dátuma a raw_dt mezőben van meghatározva: 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 vrati 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 s netoč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
Ako zaradiť predaje produktov, ktoré ne patria do žiadnej kategórie, do kategórie „Ostalo“?
V miestnosti sú tri žiarovky a vonku tri vypínače. Všetky sú vypnuté a do miestnosti sa dá vstúpiť iba raz. Ako zistiť, ktorý vypínač ovláda ktorú žiarovku?
Je potrebné napísať dopyt, ktorý vráti predposledný načítaný záznam podľa kľúča id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Existuje tabuľka odberateľov s históriou zmien. Každý záznam pre odberateľa je platný v období od valid_from_dt do valid_to_dt. Ak je záznam zatvorený, nasledujúci začína v ten istý deň. Pre každého odberateľa by mal byť len jeden aktívny záznam v intervale [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 | Je potrebné napísať dopyt, ktorý vráti záznamy s nesprávnym dátumom zatvorenia. |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 |