First, subtract what you have from what you need, for all 3 colors. See if you have enough red-green to cover red-green Then see if you have enough green-blue to cover blue Then see if you have enough red-green and gree-blue combined to cover all of your needs. That'll take care of green. Here is some python code: need_red, need_green, need_blue = [int(x.strip()) for x in input().strip().split()] red, green, blue = [int(x.strip()) for x in input().strip().split()] red_green, green_blue = [int(x.strip()) for x in input().strip().split()] need_red = max( need_red-red, 0 ) need_green = max( need_green-green, 0 ) need_blue = max( need_blue-blue, 0 ) print( need_red+need_green+need_blue\ if need_red<=red_green\ and need_blue<=green_blue\ and need_red+need_green+need_blue<=red_green+green_blue\ else -1 )