fork download
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. size_t alternateLength(int* a, size_t size, int first, int second) {
  6. for(size_t i=0; i < size; i++)
  7. if (a[i] == first) {
  8. size_t count = 0;
  9. size_t j = i;
  10. for(;;) {
  11. j++; count++;
  12. if (j>=size) j=0; //Дошли до конца? Начнем с начала
  13. if (i==j) return 0; //Сделали полный цикл => не нашли
  14. if (a[j]==second) return ++count; //Нашли второе - вернули
  15. }
  16. }
  17. return 0;
  18. }
  19.  
  20. int main() {
  21. int WDOrder[] = {1, 2, 9, 5, 3, 6, 8};
  22. cout << alternateLength(WDOrder, sizeof(WDOrder)/sizeof(WDOrder[0]), 5, 2);
  23. }
Success #stdin #stdout 0s 4488KB
stdin
Standard input is empty
stdout
6