Reverse Engineer Polling Statistics Introduction

Given a set of percentages of choices in a poll, calculate the minimum number of voters there must be in the poll to generate those statistics.

Example: What is your favorite pet?


Dog: 44.4%
Cat: 44.4%
Mouse: 11.1%


Output: 9 (minimum possible # of voters)

Specs

Here are the requirements for your program/function:


You are given an array of percentage values as input (on stdin, as function argument, etc.)
Each percentage value is a number rounded to one decimal place (e.g., 44.4 44.4 11.1).
Calculate the minimum possible number of voters in the poll whose results would yield those exact percentages when rounded to one decimal place (on stdout, or function return value).
Bonus: -15 characters if you can solve in a "non-trivial" way (i.e., doesn't involve iterating through every possible # of voters until you find the first one that works)


Example

&gt;./pollreverse 44.4 44.4 11.1
9
&gt;./pollreverse 26.7 53.3 20.0
15
&gt;./pollreverse 48.4 13.7 21.6 6.5 9.8
153
&gt;./pollreverse 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 99.6
2000
&gt;./pollreverse 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 98.7
667
&gt;./pollreverse 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 98.7
2000
&gt;./pollreverse 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 97.8
401


Scoring

This is code-golf, so shortest possible characters wins.  Any bonuses are further subtracted from the total character count.
Python, 154
 
def p(x):
 n=[1]*len(x);d=2;r=lambda z:round(1000.*z/d)/10
 while 1:
    if(map(r,n),sum(n))==(x,d):return d
    d+=1
    for i in range(len(x)):n[i]+=r(n[i])&lt;x[i]

It works for the last example now.
Example runs:
&gt;&gt;&gt; p([44.4, 44.4, 11.1])
9
&gt;&gt;&gt; p([26.7, 53.3, 20.0])
15
&gt;&gt;&gt; p([48.4, 13.7, 21.6, 6.5, 9.8])
153
&gt;&gt;&gt; p([0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 99.6])
2000
&gt;&gt;&gt; p([0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 98.7])
667
&gt;&gt;&gt; p([0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 98.7])
2000
&gt;&gt;&gt; p([0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 97.8])
401