public static void Main()
string[] rows = input.Split('\n');
var passwords = new string[rows.Length];
var letters = new char[rows.Length];
var pos1 = new int[rows.Length];
var pos2 = new int[rows.Length];
for (var i = 0; i < rows.Length; i++) {
var policy = rows[i].Split(':')[0];
var policy_pair = policy.Split();
var pos1_pos2 = policy_pair[0];
var letter = policy_pair[1];
pos1[i] = int.Parse(pos1_pos2.Split('-')[0]);
pos2[i] = int.Parse(pos1_pos2.Split('-')[1]);
letters[i] = policy_pair[1][0];
passwords[i] = rows[i].Split(':')[1];
var is_pos1_ok = passwords[i][pos1[i]] == letters[i];
var is_pos2_ok = passwords[i][pos2[i]] == letters[i];
if ((is_pos1_ok && !is_pos2_ok) || (!is_pos1_ok && is_pos2_ok)) {
Console.WriteLine("{0}, {1}, {2}, {3}, pos1:{4}, pos2:{5}, pos1:{6}, pos2:{7}", pos1[i], pos2[i], letters[i], passwords[i], is_pos1_ok, is_pos2_ok, passwords[i][pos1[i]-1], passwords[i][pos2[i]-1]);
Console.WriteLine("Answer: {0}", count);
public static string input = @"2-4 r: prrmspx
4-8 t: pctpfqtrtttmvptvfmws
12-14 h: hhhhhhhhhhhhhhhh
14-15 v: vvvvvvvvhvvvvdmvv
8-17 x: xxxxxxdxxxxxxxckxx
10-16 v: vvvvvvvvvcvvvvvpvv
18-19 k: kkkkkkkkkkkkkkkkkkk
1-2 f: sfffffffffffffffff
16-17 k: jkfmnwkkztnxvlkkw
3-5 d: wdddxvmnbdhvzdgqbdm
5-13 q: qqqkpqqqsqqqxqqqq
2-12 m: kvwlwmmvhbpgmnzfddms
2-4 j: kjgcpgxgcphkqjjmbwd
10-20 n: tnmhnlznnpnmnfnngnnn
9-17 m: mmmmmmmmqdlmmxbmtmmm
14-16 k: kkkkkkmkkkkkjtkkk
3-8 w: rcwwwkqwbwkwmdqtwmw
14-17 l: llllllwllllllwllclll
15-16 b: bbbbbbbbbbbbbbbb
8-11 d: qdvdddddndphdndmgdkp
17-18 q: qqqkqqqqqqcqqqqtqq
11-16 m: mmmwmwxvmmmmmmmmmmm
15-16 k: fkkkskkkmkkkkkkk
2-4 n: gjbnlsxvqmvxgcwntvvs
16-17 b: bbbbbbbbbbbbbbbbbbb
16-17 f: fffcfffffjfmrzqffnr
15-17 h: bhzhhfndwgdhlhhhjh
15-17 j: jjjjjmjjjjtjgvnxk
11-18 m: mmmmmmmmmmqmmmmmmf
1-14 x: xxxxcxxxxxxxxxxxxx
1-11 x: xcnxxxxvxlxkmcrxn
8-11 h: hgnhkhhshhnhhzdhllw
6-10 n: fnnwnpnnjnhmnntqn
10-15 b: bbbbbbbbbwbbbbbbbbbb
13-16 z: zzzzzzzwzzzzvvzkztjz
5-6 t: xntkwthxbdtlmxtpzz
7-10 c: gtrkbcxccccccchch
17-18 b: bbbbbbbqbbbsbbbbsnbb
13-15 x: smxxxjxmmkxxxmxx
15-16 j: jjjjjjjjjjjjzgjjwjjj
7-16 w: tvgdzjjqlwzknwvwgzh
7-12 g: gcqwnmgjhcrjnzwcmw
5-16 d: ddddddvddddddddddd
1-2 p: fwwtpllzbmjbwcnkbh
10-18 p: vhpwpppxfppppvppdh
18-19 z: zzzzzzzzzzzzszzzzzzz
14-15 v: vwvvvvvvvvvjvmcvvv
13-18 j: jgjrjjjjjqjjjhjtjj
12-17 r: nrrgrrsrrrrkrrrdt
2-14 h: hhhhhhhhhhhhrnhhwh
13-14 t: tttgtttrztstltlhb
14-17 s: fhdxfshbglsvjsgbs
9-14 p: pppppppppppvpppppppc
10-11 x: xwxxxkxxxjxqxxxbbxx
17-18 k: kkkkkkkkkkkckkkkkk
12-14 s: vdsrgdsghxcblflbwj
8-13 h: gxzhhbkdgfdglfqqcls
4-12 t: wttrttvtgttztttdttst
6-7 n: zbfvmngknrzfzqpwhtx
12-14 g: gggggggggggggbgg
14-19 m: mmmmmmmmmmmmmmmmmmfm
12-14 z: zcfqlkxghjjpjzsc
15-16 p: brpvpplmhvnbxppc
15-16 b: bbxbbbbbbbbbbbbb
8-11 c: hscggrpcpbxrxwgsv
10-15 j: jjjjjjjjjnjjjjmjjjj
11-13 k: kkkkkkkkkkckfkkk
6-13 n: hqnkdmwnxnwndnxgl
16-17 x: gxxxxxsxxbxxxxxmp
1-10 g: qgggjgwqzggvzflmj
12-14 m: xzmmjmhmmmmktmtmmmm
18-19 x: zkxbllxbtbzggncfxxx
5-10 b: bxkbrbkdtwwrbkskjpc
12-15 f: ffffftjfffffffzfff
14-15 v: vvvvvvvvvvvvvlrv
12-15 x: zppxdwxtplfvzfxlwl
4-18 c: cccccccccccccccccc
7-15 w: wwwwwwwwwwwwrwwwwwww
16-17 n: nnnnnnnnnnnnnnnnznnn
8-10 t: tntbgchftpttttttfttt
4-7 r: rlrbsmhnrqrbxrnlrm
13-17 m: vkmmmdhfkmtmgmxhk
16-17 g: gggggmgggfgggggsggvg
2-3 l: tllcqnlwfvlfmcgssg
7-18 s: shssssfwssssssksmss
4-15 c: ccccccccccccccccr
10-18 w: wwwwwwwwwwwwwwwwwnw
5-17 x: hxpnccxhwlsxxdmxxd
16-17 x: xxxxkxxxxxlmxxvxfx
17-20 x: xxxpxxxxxxhxxxxxfxxx
13-19 m: srmmmmmmmmfhmgmmmqs
10-16 c: cccgcczcccccccbcfcct
12-13 p: pstcvcjlnwsqphwnsr
3-15 p: lnfhbvnpmfztbqppcf
14-18 l: lllljllllllllllgld
4-9 s: sssnssskwsbfssssss
10-12 g: zgpgghbggjqgggkggjg
3-18 m: mmmmmmmmmmmmmmmmmkmm
2-13 x: fzvhrqwcrjjzxprnxlk
4-19 w: wksmppsqrpppfkdzlrg
15-18 t: tttttttttttttthtttt
3-11 r: rzrwrdbqkhrbldrgph
17-18 b: bbbbbbwbbbbbbcbbtb
10-13 b: bfbbbjxbbjbbwblc
3-14 f: fbfffsjffffffgfffff
9-16 n: nnnnnnnnnnnnnnnnn
4-13 m: mvdmnfnnpxjtmgnwgc
11-15 k: jmckdsmvzptdslkkjqf
11-14 g: ggggggrgmgggnhgggg
13-18 p: pppppppppppppppppxpp
17-18 x: xxhplchxxxxxxxxxgm
15-17 z: nfzxdmgdvjzzpqdjt
8-10 j: jjjjjjnlbjhjzjljj
16-17 w: wwwwwwwwwwwwwswzww
16-19 x: jltfxxfgkkxnnxjkrxz
12-14 f: ffffffffrdfjffff
14-15 d: vdddxdddddddddddd
11-17 f: fffftfxbffffffffrff
1-18 f: ffffffffffffffffffff
14-17 c: crncccqdsjcclcxcmdw
3-14 p: ppnppppppppppcpppppp
5-18 p: ppfpppppppppppppppp
7-16 h: hhhhhhhhhhhhhhhhh
7-8 j: zgjwjcmnjjjljnvjjgj
11-15 z: zqzzzxvzzdmzzzzz
15-16 f: ffffffffffffffmbf
10-11 s: ssssssssssssxssnss
2-13 z: znkpztzzzzzzznlwzz
15-16 n: nnnnnnnnnnnnnnsnn
15-16 x: xxxxxxxxxmxxxxxtxrx
6-17 h: hhhhhhhhhhhhpjhhh
8-13 v: zlvhjhjhtwtkbxqqw
14-19 f: gfbrfsffprfffhrffzm
17-18 h: xjvnmlhhnlxltrdltgr
11-14 v: dnhpmxjvmwrknvvpr
8-17 w: vnwpmbbpmcwwgpwlwh
13-16 v: vzvgvvvwvvvvvvvjvvgk
18-19 g: gjgggkggggkxgpgdglh
17-18 q: qbmbqqlqqjqqhtqfqq
19-20 r: rsrkmcrhkqfrfdqmlvxq
3-9 j: jdjjjjbjwjjjjjjjjjj
10-13 t: tttttttttqttvtttt
16-17 s: sssssssssssssssfpsss
2-19 k: zkhcfxztkgltmqbdqxj
3-18 k: kdkkkfbkgwkdknkkkzjk
9-11 k: kxkjrpkkckkkkkskk
9-18 k: hbkrrwvctstksttkwrvf
3-10 m: pxpwzblsvrlsxjpvpslt
9-14 r: rrrrrrrrtrrrglrrz
11-16 s: spgsmwbrshhldcsvvx
13-14 c: cccccccgcwcccxdc
12-15 w: wrlwwxwwwlwwwfwcw
15-16 g: gggggwgggggggggg
8-10 q: gqqzqmltqqlkqwtzgfn
11-16 j: kjsjjjjjjjckjjjj
16-17 r: rrrrrrrrrrrrrrrrr
9-15 t: ttdttttvttttqttvs
14-17 q: lgdsvqxwmhdwzhjsq
13-19 m: mmmmzmmsmmmmmmmmmmc
2-12 r: rrcrqrprhcrrrvrph
2-9 f: ffdffffmfqpffffffff
14-17 j: jjjjjjjjjjjjjzjjs
2-8 t: ftgttpcttxtvnttntjs
1-11 k: kvkkkkkkkkkkkkkkk
2-11 x: qxxnxxxxxxxmxfxjsg
12-14 r: wzrrfztrbrrrztgrgrm
14-16 d: dddddddddddddsddd
7-8 l: qkgqklzzllqclqlfjl
10-16 k: kkkkkqkkkkkkkkkw
7-17 x: qxfxxxxvzslqzzbcx
9-10 g: ggggggggvjggggggggg
10-13 h: hwvhhhhjhhthhhhlxh
15-18 p: pzpgpppppgpxpppbppnp
15-16 q: qqqqqqqqqqqqqqqz
13-16 v: wvfcgrgfvggjcbqv
9-10 v: vvvvvvvvjvvvjvwvv
2-17 f: kfjwdtmhzjzlvhpjf
9-15 z: mzzzcfzzzwvtzqgbzjzm
11-17 f: flcffsqwlfjvbcffb
13-14 b: bbbbbbnbbbnbbbbbsb
5-7 d: dwdznhddttljdnvkdws
11-12 t: ttbttttttttttttt
17-18 f: lfffffmfffffffffkff
17-19 k: kkkmzkkkrkfspllkckb
5-11 l: llllvljllltlllplll
16-18 m: mmxmmmmmmmlmmmmwmmm
11-13 s: sssssssssvlwxsfj
14-15 f: ffzgnqfrclzgxfffff
14-16 p: tqxpdpddrwfxgjvc
12-15 j: cjjjmwjdbtpwjmjcg
11-17 n: nnnnnnnnnnnnnnnnln
6-16 v: gvfjvvvvvqlsbrvvd
6-18 r: qvvthtbxlkrnvqzvlf
10-12 f: ffglffjffffctfffff
15-16 q: mqqnqfqjfqqqzqqt
1-7 v: vmvsgjdfdpwtvqqfsh
10-12 c: ccccccccclmcccjc
13-14 g: gggggglgrggqzgggvbgg
12-18 c: cccccccccctdccccch
15-16 j: jjjjjjjjjjjjrjjj
13-15 n: nnnrnnpdfnnqnnncnfnn
15-16 v: vvvvvrvvvvvvvvvvr
10-19 v: vvvvvvvvvvvvvvvvvvxv
17-18 w: wwhwwwwwvwwwwwwwnsw
3-13 w: wwwwwwwvhwwwwpwww
7-8 n: pjnxnnnntpwnbsjnnz
8-12 k: lzrvvhtkkpbkfwjzcmz
7-16 f: ffffffkfffffffffff
13-14 v: vvfvvvvvzgvvvvmvv
13-14 z: zzjzkzzlcbzpjzzz
15-19 l: llllllllllfllllllll
1-11 j: prdqjlhjdvljjvjmhnm
10-16 v: stshngzvzvvvnffv
18-20 t: bbttltktrgtntgtzhtct
13-16 k: kkknkkkkkkkkkkkrkk
9-11 k: kkrqkzkkkvkshqkbkkhk
9-13 j: qjjjjjjvmrjjjjjjjj
7-8 h: hdhhhqhhnnfqwhzhdlsx
16-19 k: kkkkkkkkkkkkkkkfkkd
13-14 t: ttjftttcttttptttt
11-19 z: zzhzzzzzzzzvznzzzzgz
7-16 c: tpcwtwcbljrnztwrsdd
9-13 r: csngrmrxrqvhdwfkvns
7-13 q: qqqqqqqqqqqqqqqqq
11-16 l: cvlxgkdmltldzsplzz
13-14 x: xxxxxxxxxxxxxhxx
11-20 c: qmhcvthqctdtscfcjcck
16-19 j: tgsjqjwjjjbcjtjjjjj
9-18 d: ddddddddzddddddddl
11-17 x: xcxrxxxxxqzrxxxxxxx
9-10 m: ddmlmtmgmmgmprmbmpqm
3-10 v: dwxdfjhxgsznhzqsqnd
1-10 p: ppwpwppppppljtppr
6-11 f: rtwzsffhxplnwrzpwwj
3-9 c: klcdzfchcnxcccnccpc
6-13 d: rbbzghqwwmrdkssgn
9-10 p: tpppfxvbppppgpnvfzcv
2-8 g: vghggdbfggrfggrgggrt
11-16 g: gjzgfnggggsgggzh
8-11 s: ssssssssssqssmssss
1-13 j: xjwjjljjjjdjjjjmjj
11-13 m: smmhmmcmmmkmdmmmmm
15-17 p: ppppppppppppppsps";