Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <queue>
- using namespace std;
- vector<int> resenie;
- int ceni[20][3];
- int prv;
- vector<int> zabrisenje;
- void rek(int &n, int prethodnik, int s, int i)
- {
- if(i==n-1)
- {
- for(int j = 0; j<3; j++)
- {
- if(prethodnik==j || prv==j)
- continue;
- resenie.push_back(s+ceni[i][j]);
- }
- return;
- }
- else
- {
- for(int j = 0; j<3; j++)
- {
- if(i==0)
- prv = j;
- if(prethodnik==j)
- continue;
- rek(n, j, s+ceni[i][j], i+1);
- }
- }
- }
- int main()
- {
- int n;
- cin >> n;
- for(int i=0; i<n; i++)
- cin >> ceni[i][0] >> ceni[i][1] >> ceni[i][2];
- rek(n, -1, 0, 0);
- int mincena = 1000000;
- for(int i = 0; i<resenie.size(); i++)
- {
- if(mincena>resenie[i])
- mincena = resenie[i];
- }
- cout << mincena << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement