I don't think that this is going to be very easy to implement like you have stated here. Instead of creating a dynamic select list for the state and try to use multiple values for the selection you should instead use a recordset lookup based on the selected state. You can query your table based on the posted state value.
You would then store the corresponding value for that state in a session variable. You will also want to check and make sure that you are storing the value for the shipping type in a session variable as well. Once you have these session variables setup like this you can then craft the rules to be like how you want.
For the flat rate rule you are looking to see if both of these session variables exists, then if they equal 1 and 11 respectively. If they do then you would have the flat rate value.
For the other shipping quote rule you can add in conditions for these other two session variables, if the ups variable is not equal to 11 AND the flat rate session variable is not equal to 1. Once you add in these other conditions the rule should only function if your first rule does not.