но каждый элемент вектора должен быть прогнан через функцию (лямбду). Как это лучше сделать? не хочется промежуточный вектор лепить.
                  
                  
                
предварительно пройтись for_each'ем и поприменять лямбду?
 Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  промежуточный вектор
Дык по исходному пройтись...
перегрузка с компаратором не подходит?
Несколько раз функции считать над элементами?
 Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  тогда на выходе получим мин макс от исходного вектора, а нужно обработанные лямбдой
 Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  минмакс вроде должен один раз по вектору пройтись
Пройтись и сравнивать разные вещи. Там точно ровно N сравнений?
At most max(floor((3/2)*(N−1)), 0) applications of the predicate
О, спасибо. Пересравнения будут, короче
неудивительно, там же надо искать и максимум и минимум
 Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  странно все это, почему мне кажется что это можно сделать за О(N)
За N сравнений?
С C++20 ренжами можно придумать через views::transform
 Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Ramil
                          Rizvanov
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  https://godbolt.org/z/MjPKcbhs4 сделал такую функциональную обертку над ForwardIterator
Обсуждают сегодня