Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.90 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #include <vector>
  3. #include <algorithm>
  4. int pkt[1000];
  5. int wiersz[1000];
  6. using namespace std;
  7. int main()
  8. {
  9.     ifstream plik;
  10.     int plansza[20][20];
  11.     plik.open("plansza.txt");
  12.     for (int i=0;i<20;i++)
  13.     {
  14.         for (int j=0;j<20;j++)
  15.             plik >> plansza[i][j];
  16.     }
  17.     ifstream plik2;
  18.     plik2.open("robot.txt");
  19.     string ruchy[1000];
  20.  
  21.  
  22.     for (int i=0;i<1000;i++) pkt[i]=3;
  23.  
  24.  
  25.     for (int i=0;i<1000;i++)
  26.     {
  27.         plik2>>ruchy[i];
  28.     }
  29.  
  30.     for (int i=0;i<1000;i++)
  31.     {
  32.         int x=0;
  33.         int y=0;
  34.         for (int j=0;j<ruchy[i].length();j++)
  35.         {
  36.             if (ruchy[i].at(j)=='N') y--;
  37.             if (ruchy[i].at(j)=='S') y++;;
  38.             if (ruchy[i].at(j)=='E') x++;
  39.             if (ruchy[i].at(j)=='W') x--;
  40.  
  41.             if(x<0||y<0||x>19||y>19)
  42.             {
  43.                 pkt[i]=-1;
  44.                 break;
  45.             }
  46.             pkt[i]=pkt[i]+plansza[x][y];
  47.         }
  48.     }
  49.  
  50. int k=0;
  51. for (int i=0;i<1000;i++)
  52. {
  53.     if (pkt[i]==-1) k++;
  54. }
  55. cout << "Liczba zdyskwalifikowanych graczy: " << k << endl;
  56.  
  57. int maxx=0;
  58. int licz;
  59. for (int i=0;i<1000;i++)
  60. {
  61.     if (pkt[i]>maxx)
  62.     {
  63.         maxx=pkt[i];
  64.         licz=i;
  65.     }
  66. }
  67. cout<<endl;
  68. cout <<"Numer gracza: " << licz+1 << endl;
  69. cout<<"Liczba punktow: "<<pkt[licz]<<endl;
  70.  
  71. int gracz=0;
  72. for (int i=0;i<1000;i++)
  73.     {
  74.  
  75.         for (int j=0;j<ruchy[i].length()-1;j++)
  76.         {
  77.             if ((ruchy[i].at(j)=='W'||ruchy[i].at(j)=='E')&&(ruchy[i].at(j+1)=='W'||ruchy[i].at(j+1)=='E'))
  78.             {
  79.                 gracz++;
  80.             }
  81.             else if (gracz>wiersz[i])
  82.             {
  83.                 wiersz[i]=gracz;
  84.                 gracz=0;
  85.             }
  86.         }
  87.     }
  88.     sort(wiersz, wiersz+1000);
  89. cout<<endl;
  90. cout << "Numer gracza: " << gracz<<endl;
  91. cout << "Najwieksza ilosc punktow: " << wiersz[999]<<endl;
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement