00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "route_valid.h"
00013
00014 #include <vector>
00015
00016 bool valid (Route & __route)
00017 {
00018
00019 std::vector<unsigned int> t;
00020 t.resize(__route.size());
00021
00022 for (unsigned int i = 0 ; i < __route.size () ; i ++)
00023 {
00024 t [i] = 0 ;
00025 }
00026
00027 for (unsigned int i = 0 ; i < __route.size () ; i ++)
00028 {
00029 t [__route [i]] ++ ;
00030 }
00031
00032 for (unsigned int i = 0 ; i < __route.size () ; i ++)
00033 {
00034 if (t [i] != 1)
00035 {
00036 t.clear();
00037 return false ;
00038 }
00039 }
00040
00041 t.clear();
00042 return true ;
00043 }