Win 270 electoral college votes
Charcoal, &nbsp;52 ... 45&nbsp; 42 bytes (270 votes)

A list of states that optimizes the compression with Brotli.

”}∧J⟧´⪫3⎚&gt;↘≡ＶＮb7&gt;¹l↙⁵Þ7/…ξ⌕↑τc&lt;y\MΦＧＣ＆⸿Dρ~


Try it online!

Output

Texas       
Pennsylvania
Georgia     
Illinois    
Washington  
Indiana     
California  
Arizona     
Michigan    
Virginia    
Florida     
New York    


Node.js script

The initial list was found with the following Node.js script that shuffles the 30 most efficient states, extracts the shortest leading sub-list with a score greater than or equal to 270, joins it with \r and invokes the Brotli compressor on the resulting string.

It was optimized some more by shuffling the most promising sub-list to find an order offering the best compression.



let states = [ ['Alabama', 9], ['Alaska', 3], ['Arizona', 11], ... ];

states =
  states.map(a =&gt; [a[0], a[1], a[1] / a[0].length])
  .sort((a, b) =&gt; b[2] - a[2])
  .slice(0, 30);

const zlib = require('zlib');

let bestLen = 1 / 0, bestScore = 1 / 0,
    list, score, str, pack;

while(1) {
  for(let i = states.length - 1; i &gt; 0; i--) {
    let j = Math.floor(Math.random() * (i + 1));
    [ states[i], states[j] ] = [ states[j], states[i] ];
  }

  for(
    let n = 1;
    (score = (list = states.slice(0, n)).reduce((p, c) =&gt; p + c[1], 0)) &lt; 270;
    n++
  ) {}

  str = list.map(s =&gt; s[0]).join('\r');
  pack = zlib.brotliCompressSync(Buffer(str));

  if(pack.length &lt; bestLen || (pack.length == bestLen &amp;&amp; score &lt;= bestScore)) {
    bestLen = pack.length;
    bestScore = score;
    console.log(bestLen, bestScore, str.split('\r').join('\\r'));
  }
}