Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- bool DaLiJeSadrzan(std::vector<int> v, std::vector<int> obj)
- {
- int ind = 0; // za obj
- for (unsigned int i = 0; i < v.size(); i ++)
- {
- if (ind == obj.size()) ind = 0;
- if (v[i] != obj[ind ++]) return false;
- }
- return true;
- }
- int VratiPeriod(std::vector<int> v)
- {
- int maksimalniPeriod = (int)v.size() / 2;
- for (int i = 0; i < maksimalniPeriod; i ++)
- {
- std::vector<int> osnovniPeriod(i + 1);
- for (int j = 0; j <= i; j ++)
- osnovniPeriod[j] = v[j];
- if (DaLiJeSadrzan(v, osnovniPeriod))
- return osnovniPeriod.size();
- }
- return 0;
- }
- int main()
- {
- std::vector<int> v {1,2,1,1,2,1,1,2,1};
- std::cout << VratiPeriod(v) <<std::endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment