изящней, чем?
                  
                  
                      auto q = {&v1, &v2, &v3};
                  
                  
                      if (std::ranges::any_of(q,
                  
                  
                          [&s](auto p) {return std::ranges::find(*p, s) != p->end(); })) {
                  
                  
                
изящней будет std::ranges::find(v1, s) != v1.end() || std::ranges::find(v2, s) != v2.end() || std::ranges::find(v3, s) != v3.end() кмк
тогда твой вариант
Если есть ranges-v3, то там есть concat
Обсуждают сегодня