Exemplo n.º 1
0
 int threeSumClosest(vector<int>& nums, int target) {
     int minDifference = INT_MAX;
     int desiredSum = INT_MIN; 
     
     if(nums.empty())
         return minDifference;
         
     sort(nums.begin(), nums.end());
     for(int i3 = nums.size() - 1; i3 > 0; i3 = moveIndex(nums, i3, false))
     {
         for(int i1 = 0, i2 = i3 - 1; i1 < i2;)
         {
             const int sum = nums[i1] + nums[i2] + nums[i3];
             if(sum == target)
                 return sum;
                 
             const int difference = (int) abs(target - sum);
             if(difference < minDifference)
             {
                 minDifference = min(minDifference, difference);
                 desiredSum = sum;
             }
             
             
             if(sum > target)
                 i2 = moveIndex(nums, i2, false);
             else
                 i1 = moveIndex(nums, i1, true);
         }
     }
     
     return desiredSum;
 }
void CommandHistoryWindow::moveIndexToMouse()
{
	sf::Vector2f localMouseFloat(getLocalPoint(sf::Mouse::getPosition(m_window)));
	if(!getLocalBounds().contains(localMouseFloat)) //SFML BUG: SOMETIMES MOUSE IS NOT IN BOUNDS
		return;
	int clickedIndex = static_cast<int>(localMouseFloat.y / m_entrySize.y);
	moveIndex(clickedIndex - std::distance(m_commandList.begin(), m_iterator));
}
Exemplo n.º 3
0
void IPFilterModel::moveDown(const QModelIndex &i){
    moveIndex(i, true);
}
Exemplo n.º 4
0
void IPFilterModel::moveUp(const QModelIndex &i){
    moveIndex(i, false);
}