Piet Hein en John Nash bedachten onafhankelijk van elkaar het strategisch bordspel Hex dat tegelijkertijd super eenvoudig maar ook zeer tactisch is.
Het spel wordt gespeeld met twee spelers die elk twee tegenoverliggende zijden van het spelbord toegewezen krijgen die ze met elkaar moeten proberen verbinden met een ononderbroken keten van stenen in hun eigen kleur (wit of zwart). Ze doen dit door om de beurt een steen van hun kleur op het spelbord te leggen. Gelijkspel is niet mogelijk en het is ook bewezen dat de speler die als eerste aan de beurt komt altijd een winnende strategie heeft (als de tweede speler zo'n strategie had, dan zou de eerste speler die altijd kunnen "stelen" als hij in de voorgaande beurt aan zet kwam). Maar om het spel te kunnen winnen is het nodig dat je behoedzaam en vernuftig nadenkt.
Tegenwoordig kan je heel wat strategische bordspelen zoals Hex ook online spelen, waarbij je ofwel een mens of een computer als tegenstander tegenover je krijgt (probeer dat hier maar eens uit voor Hex1). Ondertussen is de industrie voor mobiele games miljarden dollars waard, en besteden bedrijven enorme hoeveelheden geld aan de ontwikkeling en marketing ervan.
Het tekstbestand strategy.csv2 bevat een dataset van mobiele games waarbij strategisch denken een belangrijke rol speelt. Onder dit deel van het aanbod aan games vallen bekende titels zoals Clash of Clans3, Plants vs Zombies4 en Pokemon Go5. De eerste regel van het bestand bevat een hoofding. Elke volgende regel bevat gegevens over één mobiele game, bestaande uit zeven velden die telkens van elkaar gescheiden worden door een komma (,): i) naam (Name), ii) gemiddelde gebruikersbeoordeling (Average User Rating; getal tussen 1 en 5, afgerond tot dichtsbijzijnde .5), iii) kostprijs (Price; in US dollar), iv) naam van ontwikkelaar (Developer), v) grootte van de app (Size; in bytes), vi) genres waartoe game behoort (Genres), en vii) datum waarop game werd uitgebracht (Original Release Date). Het veld met genres (Genres) bevat één of meer namen van genres die ook met komma's van elkaar gescheiden worden. De overige velden bevatten zelf geen komma's.
Gevraagd wordt om — gebruikmakend van de teksteditors vi of vim — een reeks commando's op te stellen die achtereenvolgens de volgende opdrachten uitvoeren. Probeer voor elke opdracht zo weinig mogelijk commando's te gebruiken en zorg er voor dat elk van deze commando's bestaat uit zo weinig mogelijk tekens. De commando's mogen geen programmeerbare filters (bv. awk) gebruiken. Alle opdrachten moeten na elkaar uitgevoerd worden. De opdrachten mogen de eerste regel (hoofding) niet wijzigen, tenzij dit expliciet anders vermeld staat. Ter controle kan je gebruikmaken van de meegeleverde bestanden strategy.i.csv (ZIP6), die telkens de inhoud van het bestand bevatten nadat de $$i$$-de opdracht werd uitgevoerd.
Het is wat verwarrend dat zowel de velden onderling als de genres binnen het gelijknamige veld (Genres) door komma's (,) van elkaar gescheiden worden. Los dit op door de velden van elkaar te scheiden met puntkomma's (;) in plaats van komma's (,). De genres moeten wel nog steeds met komma's van elkaar gescheiden blijven. Je mag ervan uitgaan dat naast het veld met genres (Genres), geen enkel ander veld nog komma's bevat. Zo moet
Name,Average User Rating,Price,Developer,Size,Genres,Original Release Date Sudoku,4,2.99,Mighty Mighty Good Games,15853568,Games,Strategy,Puzzle,11/07/2008 Reversi,3.5,1.99,Kiss The Machine,12328960,Games,Strategy,Board,11/07/2008 Morocco,3,0,Bayou Games,674816,Games,Board,Strategy,11/07/2008 Sudoku (Free),3.5,0,Mighty Mighty Good Games,21552128,Games,Strategy,Puzzle,23/07/2008 Senet Deluxe,3.5,2.99,RoGame Software,34689024,Games,Strategy,Board,Education,18/07/2008 Sudoku - Classic number puzzle,3,0,OutOfTheBit Ltd,48672768,Games,Entertainment,Strategy,Puzzle,30/07/2008 Gravitation,2.5,0,Robert Farnum,6328320,Games,Entertainment,Puzzle,Strategy,30/07/2008 Colony,2.5,0.99,Chris Haynes,64333824,Games,Strategy,Board,3/08/2008
bijvoorbeeld omgezet worden naar (strategy.1.csv7)
Name;Average User Rating;Price;Developer;Size;Genres;Original Release Date Sudoku;4;2.99;Mighty Mighty Good Games;15853568;Games,Strategy,Puzzle;11/07/2008 Reversi;3.5;1.99;Kiss The Machine;12328960;Games,Strategy,Board;11/07/2008 Morocco;3;0;Bayou Games;674816;Games,Board,Strategy;11/07/2008 Sudoku (Free);3.5;0;Mighty Mighty Good Games;21552128;Games,Strategy,Puzzle;23/07/2008 Senet Deluxe;3.5;2.99;RoGame Software;34689024;Games,Strategy,Board,Education;18/07/2008 Sudoku - Classic number puzzle;3;0;OutOfTheBit Ltd;48672768;Games,Entertainment,Strategy,Puzzle;30/07/2008 Gravitation;2.5;0;Robert Farnum;6328320;Games,Entertainment,Puzzle,Strategy;30/07/2008 Colony;2.5;0.99;Chris Haynes;64333824;Games,Strategy,Board;3/08/2008
We zijn we enkel geïnteresseerd in gratis mobiele apps. Verwijder alle apps die geld kosten (met andere woorden: hou enkel apps over die $0 kosten). We krijgen dan (strategy.2.csv8)
Name;Average User Rating;Price;Developer;Size;Genres;Original Release Date Morocco;3;0;Bayou Games;674816;Games,Board,Strategy;11/07/2008 Sudoku (Free);3.5;0;Mighty Mighty Good Games;21552128;Games,Strategy,Puzzle;23/07/2008 Sudoku - Classic number puzzle;3;0;OutOfTheBit Ltd;48672768;Games,Entertainment,Strategy,Puzzle;30/07/2008 Gravitation;2.5;0;Robert Farnum;6328320;Games,Entertainment,Puzzle,Strategy;30/07/2008 Carte;2.5;0;Jean-Francois Pautex;2657280;Games,Strategy,Board,Entertainment;3/08/2008 Barrels O' Fun;2.5;0;BesqWare;1466515;Games,Casual,Strategy;1/08/2008 Quaddraxx;;0;H2F Informationssysteme GmbH;3089867;Games,Entertainment,Strategy,Puzzle;11/08/2008 Lumen Lite;3.5;0;Bridger Maxwell;7086403;Games,Puzzle,Strategy;18/08/2008
Vervang de gemiddelde gebruikersbeoordeling (Average User Rating) door een label dat de apps opdeelt in drie afzonderlijke groepen op basis van hun beoordeling. Een beoordeling groter dan 2.5 krijgt het label Positive. Een beoordeling kleiner dan 2.5 krijgt het label Negative. Een beoordeling van exact 2.5 krijgt het label Neutral. Hernoem het veld ook naar Rating. We krijgen dan (strategy.3.csv9)
Name;Rating;Price;Developer;Size;Genres;Original Release Date Morocco;Positive;0;Bayou Games;674816;Games,Board,Strategy;11/07/2008 Sudoku (Free);Positive;0;Mighty Mighty Good Games;21552128;Games,Strategy,Puzzle;23/07/2008 Sudoku - Classic number puzzle;Positive;0;OutOfTheBit Ltd;48672768;Games,Entertainment,Strategy,Puzzle;30/07/2008 Gravitation;Neutral;0;Robert Farnum;6328320;Games,Entertainment,Puzzle,Strategy;30/07/2008 Carte;Neutral;0;Jean-Francois Pautex;2657280;Games,Strategy,Board,Entertainment;3/08/2008 Barrels O' Fun;Neutral;0;BesqWare;1466515;Games,Casual,Strategy;1/08/2008 Quaddraxx;;0;H2F Informationssysteme GmbH;3089867;Games,Entertainment,Strategy,Puzzle;11/08/2008 Crystal Mine;Negative;0;Modular Dreams Inc;2818386;Games,Casual,Strategy;3/05/2009
De grootte van de apps interesseert ons niet, dus verwijder dit veld (Size). We willen de naam van de ontwikkelaar graag ook net na de naam van de app zelf zien, dus verplaats dit veld (Developer) zodat het op de tweede plaats komt. Ook de hoofding moet conform deze wijzigingen aan de velden aangepast worden. We krijgen dan (strategy.4.csv10)
Name;Developer;Rating;Price;Genres;Original Release Date Morocco;Bayou Games;Positive;0;Games,Board,Strategy;11/07/2008 Sudoku (Free);Mighty Mighty Good Games;Positive;0;Games,Strategy,Puzzle;23/07/2008 Sudoku - Classic number puzzle;OutOfTheBit Ltd;Positive;0;Games,Entertainment,Strategy,Puzzle;30/07/2008 Gravitation;Robert Farnum;Neutral;0;Games,Entertainment,Puzzle,Strategy;30/07/2008 Carte;Jean-Francois Pautex;Neutral;0;Games,Strategy,Board,Entertainment;3/08/2008 Barrels O' Fun;BesqWare;Neutral;0;Games,Casual,Strategy;1/08/2008 Quaddraxx;H2F Informationssysteme GmbH;;0;Games,Entertainment,Strategy,Puzzle;11/08/2008 Lumen Lite;Bridger Maxwell;Positive;0;Games,Puzzle,Strategy;18/08/2008
Voeg achteraan een nieuw veld Approved toe (ook in de hoofding). Dit veld bevat yes als de app een Positive beoordeling heeft (Rating), behoort tot de genres Puzzle en Games (Genres) en werd uitgebracht tussen 2010 en 2016 (Original Release Date; grenzen inbegrepen). Als een app niet aan deze voorwaarden voldoet, dan bevat dit veld no. We krijgen dan (strategy.5.csv11)
Name;Developer;Rating;Price;Genres;Original Release Date;Approved Morocco;Bayou Games;Positive;0;Games,Board,Strategy;11/07/2008;no Sudoku (Free);Mighty Mighty Good Games;Positive;0;Games,Strategy,Puzzle;23/07/2008;no Sudoku - Classic number puzzle;OutOfTheBit Ltd;Positive;0;Games,Entertainment,Strategy,Puzzle;30/07/2008;no Gravitation;Robert Farnum;Neutral;0;Games,Entertainment,Puzzle,Strategy;30/07/2008;no Carte;Jean-Francois Pautex;Neutral;0;Games,Strategy,Board,Entertainment;3/08/2008;no Barrels O' Fun;BesqWare;Neutral;0;Games,Casual,Strategy;1/08/2008;no Quaddraxx;H2F Informationssysteme GmbH;;0;Games,Entertainment,Strategy,Puzzle;11/08/2008;no Bad Apples;Metaversal Studios;Positive;0;Games,Puzzle,Strategy;18/01/2010;yes