Advertisement
kburnik

Zadatak Prodavac - honi-2013-2014-1

Sep 28th, 2013
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.67 KB | None | 0 0
  1. /*
  2.     Zadatak: Prodavac
  3.              http://bit.ly/honi-2013-2014-1
  4.  
  5.     Datum: 2013-09-28
  6.        
  7.     Autor zadatka: HSIN/HONI
  8.  
  9.     Autor rješenja: Kristijan Burnik, udruga informatièara Božo Težak
  10.  
  11.     Gmail: kristijanburnik
  12.  
  13. */
  14. #include <iostream>
  15. #include <cstdlib>
  16. #include <algorithm>
  17. #include <cmath>
  18. #include <vector>
  19. #include <set>
  20. #include <map>
  21. #include <queue>
  22.  
  23.  
  24. using namespace std;
  25.  
  26. const int
  27.     PON = 0,
  28.     UTO = 1,
  29.     SRI = 2,
  30.     CET = 3,
  31.     PET = 4,
  32.     SUB = 5,
  33.     NED = 6,
  34.    
  35.     KIKIRIKI = 10,
  36.     KOSTICE = 20,
  37.     KOKICE = 30,
  38.     ZANIMACIJA = 40,
  39.    
  40.     LISTOPAD = 10,
  41.     STUDENI = 11
  42. ;
  43.  
  44. map<int,string> naziv;
  45.  
  46.  
  47. int main() {
  48.     // PROIZVODI PO DANIMA
  49.     int ppd[7];
  50.     ppd[PON] = ppd[SRI] = ppd[CET] = KIKIRIKI;
  51.     ppd[UTO] = ppd[SUB] = KOSTICE;
  52.     ppd[PET] = ppd[NED] = KOKICE;
  53.    
  54.    
  55.     naziv[KIKIRIKI] = "kikiriki";
  56.     naziv[KOSTICE] = "kostice";
  57.     naziv[KOKICE] = "kokice";
  58.     naziv[ZANIMACIJA] = "zanimacija";
  59.    
  60.     // ulaz
  61.     int dan;
  62.     char mjesec_str[20];
  63.     scanf("%d.%s",&dan,mjesec_str);    
  64.     string mjesec_s(mjesec_str);    
  65.     int mjesec = (mjesec_s == "listopada") ? LISTOPAD : STUDENI;
  66.    
  67.     // provjera iznimke
  68.     if (dan == 19 && mjesec == LISTOPAD || dan == 24 && mjesec == STUDENI ) {
  69.         // iznimka
  70.         cout << naziv[ZANIMACIJA];
  71.     } else {
  72.         // prvi dan u mjesecu ?
  73.         int prvi_u_mjesecu = (mjesec == LISTOPAD) ? UTO : PET;
  74.        
  75.         // periodicnost uzeta u obzir
  76.         int danas = (prvi_u_mjesecu + dan - 1) % 7;
  77.        
  78.         cout << naziv[ ppd[danas] ];
  79.     }
  80.  
  81.  
  82.     cout << endl;
  83.    
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement