2018-04-26 03:07

# 求一组int类型数组中，任意数相加等于一个定值的高性能算法

，求任意数（n个元素）相加，和等于150的所有组合（组合的元素个数可进行手动控制）。

15+35+45+55
50+70+80
50+100
50+50+50

private List SeveralCut(List prodWides, double mateWide, double addValue)
{
List planList = new List();

``````        if (prodWides.Count <= 0)
{
return planList;
}

for (int  i = 1; i < 1 << prodWides.Count; i++)//从1循环到2^N
{
double  sum = 0;
string planStr = string.Empty;
for (int j = 0; j < prodWides.Count; j++)
{
if ((i & 1 << j) != 0)//用i与2^j进行位与运算，若结果不为0,则表示第j位不为0,从数组中取出第j个数
{
sum += prodWides[j];
planStr += prodWides[j] + "+";
}
}

{
Console.WriteLine(planStr.TrimEnd('+'));//如果和为所求，则输出
}
}

return planList;
}
``````
• 点赞
• 写回答
• 关注问题
• 收藏
• 邀请回答

#### 7条回答默认 最新

• `````` using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] arr = { 15, 25, 30, 35, 45, 50, 55, 70, 80, 100 };
int sum = 150;
foreach (var item in Solve(arr, sum))
{
Console.WriteLine(string.Join(", ", item.Skip(1)));
}
}
static IEnumerable<IEnumerable<int>> Solve(int[] arr, int sum, IEnumerable<int> feed = null)
{
if (feed == null) feed = new List<int>() { 0 };
if (feed.Sum() == sum) yield return feed;
foreach (int n in arr.Where(x => x + feed.Sum() <= sum))
{
foreach (var item in Solve(arr, sum, feed.Concat(new int[] { n }))) yield return item;
}
}
}
}

``````
点赞 评论
• 结果太多了，这里只显示最后的一部分
...
15, 15, 15, 15, 15, 15, 15, 15, 15, 15
15, 15, 15, 15, 15, 15, 15, 15, 30
15, 15, 15, 15, 15, 15, 15, 30, 15
15, 15, 15, 15, 15, 15, 15, 45
15, 15, 15, 15, 15, 15, 25, 35
15, 15, 15, 15, 15, 15, 30, 15, 15
15, 15, 15, 15, 15, 15, 30, 30
15, 15, 15, 15, 15, 15, 35, 25
15, 15, 15, 15, 15, 15, 45, 15
15, 15, 15, 15, 15, 25, 15, 35
15, 15, 15, 15, 15, 25, 25, 25
15, 15, 15, 15, 15, 25, 35, 15
15, 15, 15, 15, 15, 25, 50
15, 15, 15, 15, 15, 30, 15, 15, 15
15, 15, 15, 15, 15, 30, 15, 30
15, 15, 15, 15, 15, 30, 30, 15
15, 15, 15, 15, 15, 30, 45
15, 15, 15, 15, 15, 35, 15, 25
15, 15, 15, 15, 15, 35, 25, 15
15, 15, 15, 15, 15, 45, 15, 15
15, 15, 15, 15, 15, 45, 30
15, 15, 15, 15, 15, 50, 25
15, 15, 15, 15, 25, 15, 15, 35
15, 15, 15, 15, 25, 15, 25, 25
15, 15, 15, 15, 25, 15, 35, 15
15, 15, 15, 15, 25, 15, 50
15, 15, 15, 15, 25, 25, 15, 25
15, 15, 15, 15, 25, 25, 25, 15
15, 15, 15, 15, 25, 30, 35
15, 15, 15, 15, 25, 35, 15, 15
15, 15, 15, 15, 25, 35, 30
15, 15, 15, 15, 25, 50, 15
15, 15, 15, 15, 30, 15, 15, 15, 15
15, 15, 15, 15, 30, 15, 15, 30
15, 15, 15, 15, 30, 15, 30, 15
15, 15, 15, 15, 30, 15, 45
15, 15, 15, 15, 30, 25, 35
15, 15, 15, 15, 30, 30, 15, 15
15, 15, 15, 15, 30, 30, 30
15, 15, 15, 15, 30, 35, 25
15, 15, 15, 15, 30, 45, 15
15, 15, 15, 15, 35, 15, 15, 25
15, 15, 15, 15, 35, 15, 25, 15
15, 15, 15, 15, 35, 25, 15, 15
15, 15, 15, 15, 35, 25, 30
15, 15, 15, 15, 35, 30, 25
15, 15, 15, 15, 35, 55
15, 15, 15, 15, 45, 15, 15, 15
15, 15, 15, 15, 45, 15, 30
15, 15, 15, 15, 45, 30, 15
15, 15, 15, 15, 45, 45
15, 15, 15, 15, 50, 15, 25
15, 15, 15, 15, 50, 25, 15
15, 15, 15, 15, 55, 35
15, 15, 15, 25, 15, 15, 15, 35
15, 15, 15, 25, 15, 15, 25, 25
15, 15, 15, 25, 15, 15, 35, 15
15, 15, 15, 25, 15, 15, 50
15, 15, 15, 25, 15, 25, 15, 25
15, 15, 15, 25, 15, 25, 25, 15
15, 15, 15, 25, 15, 30, 35
15, 15, 15, 25, 15, 35, 15, 15
15, 15, 15, 25, 15, 35, 30
15, 15, 15, 25, 15, 50, 15
15, 15, 15, 25, 25, 15, 15, 25
15, 15, 15, 25, 25, 15, 25, 15
15, 15, 15, 25, 25, 25, 15, 15
15, 15, 15, 25, 25, 25, 30
15, 15, 15, 25, 25, 30, 25
15, 15, 15, 25, 25, 55
15, 15, 15, 25, 30, 15, 35
15, 15, 15, 25, 30, 25, 25
15, 15, 15, 25, 30, 35, 15
15, 15, 15, 25, 30, 50
15, 15, 15, 25, 35, 15, 15, 15
15, 15, 15, 25, 35, 15, 30
15, 15, 15, 25, 35, 30, 15
15, 15, 15, 25, 35, 45
15, 15, 15, 25, 45, 35
15, 15, 15, 25, 50, 15, 15
15, 15, 15, 25, 50, 30
15, 15, 15, 25, 55, 25
15, 15, 15, 25, 80
15, 15, 15, 30, 15, 15, 15, 15, 15
15, 15, 15, 30, 15, 15, 15, 30
15, 15, 15, 30, 15, 15, 30, 15
15, 15, 15, 30, 15, 15, 45
15, 15, 15, 30, 15, 25, 35
15, 15, 15, 30, 15, 30, 15, 15
15, 15, 15, 30, 15, 30, 30
15, 15, 15, 30, 15, 35, 25
15, 15, 15, 30, 15, 45, 15
15, 15, 15, 30, 25, 15, 35
15, 15, 15, 30, 25, 25, 25
15, 15, 15, 30, 25, 35, 15
15, 15, 15, 30, 25, 50
15, 15, 15, 30, 30, 15, 15, 15
15, 15, 15, 30, 30, 15, 30
15, 15, 15, 30, 30, 30, 15
15, 15, 15, 30, 30, 45
15, 15, 15, 30, 35, 15, 25
15, 15, 15, 30, 35, 25, 15
15, 15, 15, 30, 45, 15, 15
15, 15, 15, 30, 45, 30
15, 15, 15, 30, 50, 25
15, 15, 15, 35, 15, 15, 15, 25
15, 15, 15, 35, 15, 15, 25, 15
15, 15, 15, 35, 15, 25, 15, 15
15, 15, 15, 35, 15, 25, 30
15, 15, 15, 35, 15, 30, 25
15, 15, 15, 35, 15, 55
15, 15, 15, 35, 25, 15, 15, 15
15, 15, 15, 35, 25, 15, 30
15, 15, 15, 35, 25, 30, 15
15, 15, 15, 35, 25, 45
15, 15, 15, 35, 30, 15, 25
15, 15, 15, 35, 30, 25, 15
15, 15, 15, 35, 35, 35
15, 15, 15, 35, 45, 25
15, 15, 15, 35, 55, 15
15, 15, 15, 35, 70
15, 15, 15, 45, 15, 15, 15, 15
15, 15, 15, 45, 15, 15, 30
15, 15, 15, 45, 15, 30, 15
15, 15, 15, 45, 15, 45
15, 15, 15, 45, 25, 35
15, 15, 15, 45, 30, 15, 15
15, 15, 15, 45, 30, 30
15, 15, 15, 45, 35, 25
15, 15, 15, 45, 45, 15
15, 15, 15, 50, 15, 15, 25
15, 15, 15, 50, 15, 25, 15
15, 15, 15, 50, 25, 15, 15
15, 15, 15, 50, 25, 30
15, 15, 15, 50, 30, 25
15, 15, 15, 50, 55
15, 15, 15, 55, 15, 35
15, 15, 15, 55, 25, 25
15, 15, 15, 55, 35, 15
15, 15, 15, 55, 50
15, 15, 15, 70, 35
15, 15, 15, 80, 25
15, 15, 25, 15, 15, 15, 15, 35
15, 15, 25, 15, 15, 15, 25, 25
15, 15, 25, 15, 15, 15, 35, 15
15, 15, 25, 15, 15, 15, 50
15, 15, 25, 15, 15, 25, 15, 25
15, 15, 25, 15, 15, 25, 25, 15
15, 15, 25, 15, 15, 30, 35
15, 15, 25, 15, 15, 35, 15, 15
15, 15, 25, 15, 15, 35, 30
15, 15, 25, 15, 15, 50, 15
15, 15, 25, 15, 25, 15, 15, 25
15, 15, 25, 15, 25, 15, 25, 15
15, 15, 25, 15, 25, 25, 15, 15
15, 15, 25, 15, 25, 25, 30
15, 15, 25, 15, 25, 30, 25
15, 15, 25, 15, 25, 55
15, 15, 25, 15, 30, 15, 35
15, 15, 25, 15, 30, 25, 25
15, 15, 25, 15, 30, 35, 15
15, 15, 25, 15, 30, 50
15, 15, 25, 15, 35, 15, 15, 15
15, 15, 25, 15, 35, 15, 30
15, 15, 25, 15, 35, 30, 15
15, 15, 25, 15, 35, 45
15, 15, 25, 15, 45, 35
15, 15, 25, 15, 50, 15, 15
15, 15, 25, 15, 50, 30
15, 15, 25, 15, 55, 25
15, 15, 25, 15, 80
15, 15, 25, 25, 15, 15, 15, 25
15, 15, 25, 25, 15, 15, 25, 15
15, 15, 25, 25, 15, 25, 15, 15
15, 15, 25, 25, 15, 25, 30
15, 15, 25, 25, 15, 30, 25
15, 15, 25, 25, 15, 55
15, 15, 25, 25, 25, 15, 15, 15
15, 15, 25, 25, 25, 15, 30
15, 15, 25, 25, 25, 30, 15
15, 15, 25, 25, 25, 45
15, 15, 25, 25, 30, 15, 25
15, 15, 25, 25, 30, 25, 15
15, 15, 25, 25, 35, 35
15, 15, 25, 25, 45, 25
15, 15, 25, 25, 55, 15
15, 15, 25, 25, 70
15, 15, 25, 30, 15, 15, 35
15, 15, 25, 30, 15, 25, 25
15, 15, 25, 30, 15, 35, 15
15, 15, 25, 30, 15, 50
15, 15, 25, 30, 25, 15, 25
15, 15, 25, 30, 25, 25, 15
15, 15, 25, 30, 30, 35
15, 15, 25, 30, 35, 15, 15
15, 15, 25, 30, 35, 30
15, 15, 25, 30, 50, 15
15, 15, 25, 35, 15, 15, 15, 15
15, 15, 25, 35, 15, 15, 30
15, 15, 25, 35, 15, 30, 15
15, 15, 25, 35, 15, 45
15, 15, 25, 35, 25, 35
15, 15, 25, 35, 30, 15, 15
15, 15, 25, 35, 30, 30
15, 15, 25, 35, 35, 25
15, 15, 25, 35, 45, 15
15, 15, 25, 45, 15, 35
15, 15, 25, 45, 25, 25
15, 15, 25, 45, 35, 15
15, 15, 25, 45, 50
15, 15, 25, 50, 15, 15, 15
15, 15, 25, 50, 15, 30
15, 15, 25, 50, 30, 15
15, 15, 25, 50, 45
15, 15, 25, 55, 15, 25
15, 15, 25, 55, 25, 15
15, 15, 25, 70, 25
15, 15, 25, 80, 15
15, 15, 30, 15, 15, 15, 15, 15, 15
15, 15, 30, 15, 15, 15, 15, 30
15, 15, 30, 15, 15, 15, 30, 15
15, 15, 30, 15, 15, 15, 45
15, 15, 30, 15, 15, 25, 35
15, 15, 30, 15, 15, 30, 15, 15
15, 15, 30, 15, 15, 30, 30
15, 15, 30, 15, 15, 35, 25
15, 15, 30, 15, 15, 45, 15
15, 15, 30, 15, 25, 15, 35
15, 15, 30, 15, 25, 25, 25
15, 15, 30, 15, 25, 35, 15
15, 15, 30, 15, 25, 50
15, 15, 30, 15, 30, 15, 15, 15
15, 15, 30, 15, 30, 15, 30
15, 15, 30, 15, 30, 30, 15
15, 15, 30, 15, 30, 45
15, 15, 30, 15, 35, 15, 25
15, 15, 30, 15, 35, 25, 15
15, 15, 30, 15, 45, 15, 15
15, 15, 30, 15, 45, 30
15, 15, 30, 15, 50, 25
15, 15, 30, 25, 15, 15, 35
15, 15, 30, 25, 15, 25, 25
15, 15, 30, 25, 15, 35, 15
15, 15, 30, 25, 15, 50
15, 15, 30, 25, 25, 15, 25
15, 15, 30, 25, 25, 25, 15
15, 15, 30, 25, 30, 35
15, 15, 30, 25, 35, 15, 15
15, 15, 30, 25, 35, 30
15, 15, 30, 25, 50, 15
15, 15, 30, 30, 15, 15, 15, 15
15, 15, 30, 30, 15, 15, 30
15, 15, 30, 30, 15, 30, 15
15, 15, 30, 30, 15, 45
15, 15, 30, 30, 25, 35
15, 15, 30, 30, 30, 15, 15
15, 15, 30, 30, 30, 30
15, 15, 30, 30, 35, 25
15, 15, 30, 30, 45, 15
15, 15, 30, 35, 15, 15, 25
15, 15, 30, 35, 15, 25, 15
15, 15, 30, 35, 25, 15, 15
15, 15, 30, 35, 25, 30
15, 15, 30, 35, 30, 25
15, 15, 30, 35, 55
15, 15, 30, 45, 15, 15, 15
15, 15, 30, 45, 15, 30
15, 15, 30, 45, 30, 15
15, 15, 30, 45, 45
15, 15, 30, 50, 15, 25
15, 15, 30, 50, 25, 15
15, 15, 30, 55, 35
15, 15, 35, 15, 15, 15, 15, 25
15, 15, 35, 15, 15, 15, 25, 15
15, 15, 35, 15, 15, 25, 15, 15
15, 15, 35, 15, 15, 25, 30
15, 15, 35, 15, 15, 30, 25
15, 15, 35, 15, 15, 55
15, 15, 35, 15, 25, 15, 15, 15
15, 15, 35, 15, 25, 15, 30
15, 15, 35, 15, 25, 30, 15
15, 15, 35, 15, 25, 45
15, 15, 35, 15, 30, 15, 25
15, 15, 35, 15, 30, 25, 15
15, 15, 35, 15, 35, 35
15, 15, 35, 15, 45, 25
15, 15, 35, 15, 55, 15
15, 15, 35, 15, 70
15, 15, 35, 25, 15, 15, 15, 15
15, 15, 35, 25, 15, 15, 30
15, 15, 35, 25, 15, 30, 15
15, 15, 35, 25, 15, 45
15, 15, 35, 25, 25, 35
15, 15, 35, 25, 30, 15, 15
15, 15, 35, 25, 30, 30
15, 15, 35, 25, 35, 25
15, 15, 35, 25, 45, 15
15, 15, 35, 30, 15, 15, 25
15, 15, 35, 30, 15, 25, 15
15, 15, 35, 30, 25, 15, 15
15, 15, 35, 30, 25, 30
15, 15, 35, 30, 30, 25
15, 15, 35, 30, 55
15, 15, 35, 35, 15, 35
15, 15, 35, 35, 25, 25
15, 15, 35, 35, 35, 15
15, 15, 35, 35, 50
15, 15, 35, 45, 15, 25
15, 15, 35, 45, 25, 15
15, 15, 35, 50, 35
15, 15, 35, 55, 15, 15
15, 15, 35, 55, 30
15, 15, 35, 70, 15
15, 15, 45, 15, 15, 15, 15, 15
15, 15, 45, 15, 15, 15, 30
15, 15, 45, 15, 15, 30, 15
15, 15, 45, 15, 15, 45
15, 15, 45, 15, 25, 35
15, 15, 45, 15, 30, 15, 15
15, 15, 45, 15, 30, 30
15, 15, 45, 15, 35, 25
15, 15, 45, 15, 45, 15
15, 15, 45, 25, 15, 35
15, 15, 45, 25, 25, 25
15, 15, 45, 25, 35, 15
15, 15, 45, 25, 50
15, 15, 45, 30, 15, 15, 15
15, 15, 45, 30, 15, 30
15, 15, 45, 30, 30, 15
15, 15, 45, 30, 45
15, 15, 45, 35, 15, 25
15, 15, 45, 35, 25, 15
15, 15, 45, 45, 15, 15
15, 15, 45, 45, 30
15, 15, 45, 50, 25
15, 15, 50, 15, 15, 15, 25
15, 15, 50, 15, 15, 25, 15
15, 15, 50, 15, 25, 15, 15
15, 15, 50, 15, 25, 30
15, 15, 50, 15, 30, 25
15, 15, 50, 15, 55
15, 15, 50, 25, 15, 15, 15
15, 15, 50, 25, 15, 30
15, 15, 50, 25, 30, 15
15, 15, 50, 25, 45
15, 15, 50, 30, 15, 25
15, 15, 50, 30, 25, 15
15, 15, 50, 35, 35
15, 15, 50, 45, 25
15, 15, 50, 55, 15
15, 15, 50, 70
15, 15, 55, 15, 15, 35
15, 15, 55, 15, 25, 25
15, 15, 55, 15, 35, 15
15, 15, 55, 15, 50
15, 15, 55, 25, 15, 25
15, 15, 55, 25, 25, 15
15, 15, 55, 30, 35
15, 15, 55, 35, 15, 15
15, 15, 55, 35, 30
15, 15, 55, 50, 15
15, 15, 70, 15, 35
15, 15, 70, 25, 25
15, 15, 70, 35, 15
15, 15, 70, 50
15, 15, 80, 15, 25
15, 15, 80, 25, 15
15, 25, 15, 15, 15, 15, 15, 35
15, 25, 15, 15, 15, 15, 25, 25
15, 25, 15, 15, 15, 15, 35, 15
15, 25, 15, 15, 15, 15, 50
15, 25, 15, 15, 15, 25, 15, 25
15, 25, 15, 15, 15, 25, 25, 15
15, 25, 15, 15, 15, 30, 35
15, 25, 15, 15, 15, 35, 15, 15
15, 25, 15, 15, 15, 35, 30
15, 25, 15, 15, 15, 50, 15
15, 25, 15, 15, 25, 15, 15, 25
15, 25, 15, 15, 25, 15, 25, 15
15, 25, 15, 15, 25, 25, 15, 15
15, 25, 15, 15, 25, 25, 30
15, 25, 15, 15, 25, 30, 25
15, 25, 15, 15, 25, 55
15, 25, 15, 15, 30, 15, 35
15, 25, 15, 15, 30, 25, 25
15, 25, 15, 15, 30, 35, 15
15, 25, 15, 15, 30, 50
15, 25, 15, 15, 35, 15, 15, 15
15, 25, 15, 15, 35, 15, 30
15, 25, 15, 15, 35, 30, 15
15, 25, 15, 15, 35, 45
15, 25, 15, 15, 45, 35
15, 25, 15, 15, 50, 15, 15
15, 25, 15, 15, 50, 30
15, 25, 15, 15, 55, 25
15, 25, 15, 15, 80
15, 25, 15, 25, 15, 15, 15, 25
15, 25, 15, 25, 15, 15, 25, 15
15, 25, 15, 25, 15, 25, 15, 15
15, 25, 15, 25, 15, 25, 30
15, 25, 15, 25, 15, 30, 25
15, 25, 15, 25, 15, 55
15, 25, 15, 25, 25, 15, 15, 15
15, 25, 15, 25, 25, 15, 30
15, 25, 15, 25, 25, 30, 15
15, 25, 15, 25, 25, 45
15, 25, 15, 25, 30, 15, 25
15, 25, 15, 25, 30, 25, 15
15, 25, 15, 25, 35, 35
15, 25, 15, 25, 45, 25
15, 25, 15, 25, 55, 15
15, 25, 15, 25, 70
15, 25, 15, 30, 15, 15, 35
15, 25, 15, 30, 15, 25, 25
15, 25, 15, 30, 15, 35, 15
15, 25, 15, 30, 15, 50
15, 25, 15, 30, 25, 15, 25
15, 25, 15, 30, 25, 25, 15
15, 25, 15, 30, 30, 35
15, 25, 15, 30, 35, 15, 15
15, 25, 15, 30, 35, 30
15, 25, 15, 30, 50, 15
15, 25, 15, 35, 15, 15, 15, 15
15, 25, 15, 35, 15, 15, 30
15, 25, 15, 35, 15, 30, 15
15, 25, 15, 35, 15, 45
15, 25, 15, 35, 25, 35
15, 25, 15, 35, 30, 15, 15
15, 25, 15, 35, 30, 30
15, 25, 15, 35, 35, 25
15, 25, 15, 35, 45, 15
15, 25, 15, 45, 15, 35
15, 25, 15, 45, 25, 25
15, 25, 15, 45, 35, 15
15, 25, 15, 45, 50
15, 25, 15, 50, 15, 15, 15
15, 25, 15, 50, 15, 30
15, 25, 15, 50, 30, 15
15, 25, 15, 50, 45
15, 25, 15, 55, 15, 25
15, 25, 15, 55, 25, 15
15, 25, 15, 70, 25
15, 25, 15, 80, 15
15, 25, 25, 15, 15, 15, 15, 25
15, 25, 25, 15, 15, 15, 25, 15
15, 25, 25, 15, 15, 25, 15, 15
15, 25, 25, 15, 15, 25, 30
15, 25, 25, 15, 15, 30, 25
15, 25, 25, 15, 15, 55
15, 25, 25, 15, 25, 15, 15, 15
15, 25, 25, 15, 25, 15, 30
15, 25, 25, 15, 25, 30, 15
15, 25, 25, 15, 25, 45
15, 25, 25, 15, 30, 15, 25
15, 25, 25, 15, 30, 25, 15
15, 25, 25, 15, 35, 35
15, 25, 25, 15, 45, 25
15, 25, 25, 15, 55, 15
15, 25, 25, 15, 70
15, 25, 25, 25, 15, 15, 15, 15
15, 25, 25, 25, 15, 15, 30
15, 25, 25, 25, 15, 30, 15
15, 25, 25, 25, 15, 45
15, 25, 25, 25, 25, 35
15, 25, 25, 25, 30, 15, 15
15, 25, 25, 25, 30, 30
15, 25, 25, 25, 35, 25
15, 25, 25, 25, 45, 15
15, 25, 25, 30, 15, 15, 25
15, 25, 25, 30, 15, 25, 15
15, 25, 25, 30, 25, 15, 15
15, 25, 25, 30, 25, 30
15, 25, 25, 30, 30, 25
15, 25, 25, 30, 55
15, 25, 25, 35, 15, 35
15, 25, 25, 35, 25, 25
15, 25, 25, 35, 35, 15
15, 25, 25, 35, 50
15, 25, 25, 45, 15, 25
15, 25, 25, 45, 25, 15
15, 25, 25, 50, 35
15, 25, 25, 55, 15, 15
15, 25, 25, 55, 30
15, 25, 25, 70, 15
15, 25, 30, 15, 15, 15, 35
15, 25, 30, 15, 15, 25, 25
15, 25, 30, 15, 15, 35, 15
15, 25, 30, 15, 15, 50
15, 25, 30, 15, 25, 15, 25
15, 25, 30, 15, 25, 25, 15
15, 25, 30, 15, 30, 35
15, 25, 30, 15, 35, 15, 15
15, 25, 30, 15, 35, 30
15, 25, 30, 15, 50, 15
15, 25, 30, 25, 15, 15, 25
15, 25, 30, 25, 15, 25, 15
15, 25, 30, 25, 25, 15, 15
15, 25, 30, 25, 25, 30
15, 25, 30, 25, 30, 25
15, 25, 30, 25, 55
15, 25, 30, 30, 15, 35
15, 25, 30, 30, 25, 25
15, 25, 30, 30, 35, 15
15, 25, 30, 30, 50
15, 25, 30, 35, 15, 15, 15
15, 25, 30, 35, 15, 30
15, 25, 30, 35, 30, 15
15, 25, 30, 35, 45
15, 25, 30, 45, 35
15, 25, 30, 50, 15, 15
15, 25, 30, 50, 30
15, 25, 30, 55, 25
15, 25, 30, 80
15, 25, 35, 15, 15, 15, 15, 15
15, 25, 35, 15, 15, 15, 30
15, 25, 35, 15, 15, 30, 15
15, 25, 35, 15, 15, 45
15, 25, 35, 15, 25, 35
15, 25, 35, 15, 30, 15, 15
15, 25, 35, 15, 30, 30
15, 25, 35, 15, 35, 25
15, 25, 35, 15, 45, 15
15, 25, 35, 25, 15, 35
15, 25, 35, 25, 25, 25
15, 25, 35, 25, 35, 15
15, 25, 35, 25, 50
15, 25, 35, 30, 15, 15, 15
15, 25, 35, 30, 15, 30
15, 25, 35, 30, 30, 15
15, 25, 35, 30, 45
15, 25, 35, 35, 15, 25
15, 25, 35, 35, 25, 15
15, 25, 35, 45, 15, 15
15, 25, 35, 45, 30
15, 25, 35, 50, 25
15, 25, 45, 15, 15, 35
15, 25, 45, 15, 25, 25
15, 25, 45, 15, 35, 15
15, 25, 45, 15, 50
15, 25, 45, 25, 15, 25
15, 25, 45, 25, 25, 15
15, 25, 45, 30, 35
15, 25, 45, 35, 15, 15
15, 25, 45, 35, 30
15, 25, 45, 50, 15
15, 25, 50, 15, 15, 15, 15
15, 25, 50, 15, 15, 30
15, 25, 50, 15, 30, 15
15, 25, 50, 15, 45
15, 25, 50, 25, 35
15, 25, 50, 30, 15, 15
15, 25, 50, 30, 30
15, 25, 50, 35, 25
15, 25, 50, 45, 15
15, 25, 55, 15, 15, 25
15, 25, 55, 15, 25, 15
15, 25, 55, 25, 15, 15
15, 25, 55, 25, 30
15, 25, 55, 30, 25
15, 25, 55, 55
15, 25, 70, 15, 25
15, 25, 70, 25, 15
15, 25, 80, 15, 15
15, 25, 80, 30
15, 30, 15, 15, 15, 15, 15, 15, 15
15, 30, 15, 15, 15, 15, 15, 30
15, 30, 15, 15, 15, 15, 30, 15
15, 30, 15, 15, 15, 15, 45
15, 30, 15, 15, 15, 25, 35
15, 30, 15, 15, 15, 30, 15, 15
15, 30, 15, 15, 15, 30, 30
15, 30, 15, 15, 15, 35, 25
15, 30, 15, 15, 15, 45, 15
15, 30, 15, 15, 25, 15, 35
15, 30, 15, 15, 25, 25, 25
15, 30, 15, 15, 25, 35, 15
15, 30, 15, 15, 25, 50
15, 30, 15, 15, 30, 15, 15, 15
15, 30, 15, 15, 30, 15, 30
15, 30, 15, 15, 30, 30, 15
15, 30, 15, 15, 30, 45
15, 30, 15, 15, 35, 15, 25
15, 30, 15, 15, 35, 25, 15
15, 30, 15, 15, 45, 15, 15
15, 30, 15, 15, 45, 30
15, 30, 15, 15, 50, 25
15, 30, 15, 25, 15, 15, 35
15, 30, 15, 25, 15, 25, 25
15, 30, 15, 25, 15, 35, 15
15, 30, 15, 25, 15, 50
15, 30, 15, 25, 25, 15, 25
15, 30, 15, 25, 25, 25, 15
15, 30, 15, 25, 30, 35
15, 30, 15, 25, 35, 15, 15
15, 30, 15, 25, 35, 30
15, 30, 15, 25, 50, 15
15, 30, 15, 30, 15, 15, 15, 15
15, 30, 15, 30, 15, 15, 30
15, 30, 15, 30, 15, 30, 15
15, 30, 15, 30, 15, 45
15, 30, 15, 30, 25, 35
15, 30, 15, 30, 30, 15, 15
15, 30, 15, 30, 30, 30
15, 30, 15, 30, 35, 25
15, 30, 15, 30, 45, 15
15, 30, 15, 35, 15, 15, 25
15, 30, 15, 35, 15, 25, 15
15, 30, 15, 35, 25, 15, 15
15, 30, 15, 35, 25, 30
15, 30, 15, 35, 30, 25
15, 30, 15, 35, 55
15, 30, 15, 45, 15, 15, 15
15, 30, 15, 45, 15, 30
15, 30, 15, 45, 30, 15
15, 30, 15, 45, 45
15, 30, 15, 50, 15, 25
15, 30, 15, 50, 25, 15
15, 30, 15, 55, 35
15, 30, 25, 15, 15, 15, 35
15, 30, 25, 15, 15, 25, 25
15, 30, 25, 15, 15, 35, 15
15, 30, 25, 15, 15, 50
15, 30, 25, 15, 25, 15, 25
15, 30, 25, 15, 25, 25, 15
15, 30, 25, 15, 30, 35
15, 30, 25, 15, 35, 15, 15
15, 30, 25, 15, 35, 30
15, 30, 25, 15, 50, 15
15, 30, 25, 25, 15, 15, 25
15, 30, 25, 25, 15, 25, 15
15, 30, 25, 25, 25, 15, 15
15, 30, 25, 25, 25, 30
15, 30, 25, 25, 30, 25
15, 30, 25, 25, 55
15, 30, 25, 30, 15, 35
15, 30, 25, 30, 25, 25
15, 30, 25, 30, 35, 15
15, 30, 25, 30, 50
15, 30, 25, 35, 15, 15, 15
15, 30, 25, 35, 15, 30
15, 30, 25, 35, 30, 15
15, 30, 25, 35, 45
15, 30, 25, 45, 35
15, 30, 25, 50, 15, 15
15, 30, 25, 50, 30
15, 30, 25, 55, 25
15, 30, 25, 80
15, 30, 30, 15, 15, 15, 15, 15
15, 30, 30, 15, 15, 15, 30
15, 30, 30, 15, 15, 30, 15
15, 30, 30, 15, 15, 45
15, 30, 30, 15, 25, 35
15, 30, 30, 15, 30, 15, 15
15, 30, 30, 15, 30, 30
15, 30, 30, 15, 35, 25
15, 30, 30, 15, 45, 15
15, 30, 30, 25, 15, 35
15, 30, 30, 25, 25, 25
15, 30, 30, 25, 35, 15
15, 30, 30, 25, 50
15, 30, 30, 30, 15, 15, 15
15, 30, 30, 30, 15, 30
15, 30, 30, 30, 30, 15
15, 30, 30, 30, 45
15, 30, 30, 35, 15, 25
15, 30, 30, 35, 25, 15
15, 30, 30, 45, 15, 15
15, 30, 30, 45, 30
15, 30, 30, 50, 25
15, 30, 35, 15, 15, 15, 25
15, 30, 35, 15, 15, 25, 15
15, 30, 35, 15, 25, 15, 15
15, 30, 35, 15, 25, 30
15, 30, 35, 15, 30, 25
15, 30, 35, 15, 55
15, 30, 35, 25, 15, 15, 15
15, 30, 35, 25, 15, 30
15, 30, 35, 25, 30, 15
15, 30, 35, 25, 45
15, 30, 35, 30, 15, 25
15, 30, 35, 30, 25, 15
15, 30, 35, 35, 35
15, 30, 35, 45, 25
15, 30, 35, 55, 15
15, 30, 35, 70
15, 30, 45, 15, 15, 15, 15
15, 30, 45, 15, 15, 30
15, 30, 45, 15, 30, 15
15, 30, 45, 15, 45
15, 30, 45, 25, 35
15, 30, 45, 30, 15, 15
15, 30, 45, 30, 30
15, 30, 45, 35, 25
15, 30, 45, 45, 15
15, 30, 50, 15, 15, 25
15, 30, 50, 15, 25, 15
15, 30, 50, 25, 15, 15
15, 30, 50, 25, 30
15, 30, 50, 30, 25
15, 30, 50, 55
15, 30, 55, 15, 35
15, 30, 55, 25, 25
15, 30, 55, 35, 15
15, 30, 55, 50
15, 30, 70, 35
15, 30, 80, 25
15, 35, 15, 15, 15, 15, 15, 25
15, 35, 15, 15, 15, 15, 25, 15
15, 35, 15, 15, 15, 25, 15, 15
15, 35, 15, 15, 15, 25, 30
15, 35, 15, 15, 15, 30, 25
15, 35, 15, 15, 15, 55
15, 35, 15, 15, 25, 15, 15, 15
15, 35, 15, 15, 25, 15, 30
15, 35, 15, 15, 25, 30, 15
15, 35, 15, 15, 25, 45
15, 35, 15, 15, 30, 15, 25
15, 35, 15, 15, 30, 25, 15
15, 35, 15, 15, 35, 35
15, 35, 15, 15, 45, 25
15, 35, 15, 15, 55, 15
15, 35, 15, 15, 70
15, 35, 15, 25, 15, 15, 15, 15
15, 35, 15, 25, 15, 15, 30
15, 35, 15, 25, 15, 30, 15
15, 35, 15, 25, 15, 45
15, 35, 15, 25, 25, 35
15, 35, 15, 25, 30, 15, 15
15, 35, 15, 25, 30, 30
15, 35, 15, 25, 35, 25
15, 35, 15, 25, 45, 15
15, 35, 15, 30, 15, 15, 25
15, 35, 15, 30, 15, 25, 15
15, 35, 15, 30, 25, 15, 15
15, 35, 15, 30, 25, 30
15, 35, 15, 30, 30, 25
15, 35, 15, 30, 55
15, 35, 15, 35, 15, 35
15, 35, 15, 35, 25, 25
15, 35, 15, 35, 35, 15
15, 35, 15, 35, 50
15, 35, 15, 45, 15, 25
15, 35, 15, 45, 25, 15
15, 35, 15, 50, 35
15, 35, 15, 55, 15, 15
15, 35, 15, 55, 30
15, 35, 15, 70, 15
15, 35, 25, 15, 15, 15, 15, 15
15, 35, 25, 15, 15, 15, 30
15, 35, 25, 15, 15, 30, 15
15, 35, 25, 15, 15, 45
15, 35, 25, 15, 25, 35
15, 35, 25, 15, 30, 15, 15
15, 35, 25, 15, 30, 30
15, 35, 25, 15, 35, 25
15, 35, 25, 15, 45, 15
15, 35, 25, 25, 15, 35
15, 35, 25, 25, 25, 25
15, 35, 25, 25, 35, 15
15, 35, 25, 25, 50
15, 35, 25, 30, 15, 15, 15
15, 35, 25, 30, 15, 30
15, 35, 25, 30, 30, 15
15, 35, 25, 30, 45
15, 35, 25, 35, 15, 25
15, 35, 25, 35, 25, 15
15, 35, 25, 45, 15, 15
15, 35, 25, 45, 30
15, 35, 25, 50, 25
15, 35, 30, 15, 15, 15, 25
15, 35, 30, 15, 15, 25, 15
15, 35, 30, 15, 25, 15, 15
15, 35, 30, 15, 25, 30
15, 35, 30, 15, 30, 25
15, 35, 30, 15, 55
15, 35, 30, 25, 15, 15, 15
15, 35, 30, 25, 15, 30
15, 35, 30, 25, 30, 15
15, 35, 30, 25, 45
15, 35, 30, 30, 15, 25
15, 35, 30, 30, 25, 15
15, 35, 30, 35, 35
15, 35, 30, 45, 25
15, 35, 30, 55, 15
15, 35, 30, 70
15, 35, 35, 15, 15, 35
15, 35, 35, 15, 25, 25
15, 35, 35, 15, 35, 15
15, 35, 35, 15, 50
15, 35, 35, 25, 15, 25
15, 35, 35, 25, 25, 15
15, 35, 35, 30, 35
15, 35, 35, 35, 15, 15
15, 35, 35, 35, 30
15, 35, 35, 50, 15
15, 35, 45, 15, 15, 25
15, 35, 45, 15, 25, 15
15, 35, 45, 25, 15, 15
15, 35, 45, 25, 30
15, 35, 45, 30, 25
15, 35, 45, 55
15, 35, 50, 15, 35
15, 35, 50, 25, 25
15, 35, 50, 35, 15
15, 35, 50, 50
15, 35, 55, 15, 15, 15
15, 35, 55, 15, 30
15, 35, 55, 30, 15
15, 35, 55, 45
15, 35, 70, 15, 15
15, 35, 70, 30
15, 35, 100
15, 45, 15, 15, 15, 15, 15, 15
15, 45, 15, 15, 15, 15, 30
15, 45, 15, 15, 15, 30, 15
15, 45, 15, 15, 15, 45
15, 45, 15, 15, 25, 35
15, 45, 15, 15, 30, 15, 15
15, 45, 15, 15, 30, 30
15, 45, 15, 15, 35, 25
15, 45, 15, 15, 45, 15
15, 45, 15, 25, 15, 35
15, 45, 15, 25, 25, 25
15, 45, 15, 25, 35, 15
15, 45, 15, 25, 50
15, 45, 15, 30, 15, 15, 15
15, 45, 15, 30, 15, 30
15, 45, 15, 30, 30, 15
15, 45, 15, 30, 45
15, 45, 15, 35, 15, 25
15, 45, 15, 35, 25, 15
15, 45, 15, 45, 15, 15
15, 45, 15, 45, 30
15, 45, 15, 50, 25
15, 45, 25, 15, 15, 35
15, 45, 25, 15, 25, 25
15, 45, 25, 15, 35, 15
15, 45, 25, 15, 50
15, 45, 25, 25, 15, 25
15, 45, 25, 25, 25, 15
15, 45, 25, 30, 35
15, 45, 25, 35, 15, 15
15, 45, 25, 35, 30
15, 45, 25, 50, 15
15, 45, 30, 15, 15, 15, 15
15, 45, 30, 15, 15, 30
15, 45, 30, 15, 30, 15
15, 45, 30, 15, 45
15, 45, 30, 25, 35
15, 45, 30, 30, 15, 15
15, 45, 30, 30, 30
15, 45, 30, 35, 25
15, 45, 30, 45, 15
15, 45, 35, 15, 15, 25
15, 45, 35, 15, 25, 15
15, 45, 35, 25, 15, 15
15, 45, 35, 25, 30
15, 45, 35, 30, 25
15, 45, 35, 55
15, 45, 45, 15, 15, 15
15, 45, 45, 15, 30
15, 45, 45, 30, 15
15, 45, 45, 45
15, 45, 50, 15, 25
15, 45, 50, 25, 15
15, 45, 55, 35
15, 50, 15, 15, 15, 15, 25
15, 50, 15, 15, 15, 25, 15
15, 50, 15, 15, 25, 15, 15
15, 50, 15, 15, 25, 30
15, 50, 15, 15, 30, 25
15, 50, 15, 15, 55
15, 50, 15, 25, 15, 15, 15
15, 50, 15, 25, 15, 30
15, 50, 15, 25, 30, 15
15, 50, 15, 25, 45
15, 50, 15, 30, 15, 25
15, 50, 15, 30, 25, 15
15, 50, 15, 35, 35
15, 50, 15, 45, 25
15, 50, 15, 55, 15
15, 50, 15, 70
15, 50, 25, 15, 15, 15, 15
15, 50, 25, 15, 15, 30
15, 50, 25, 15, 30, 15
15, 50, 25, 15, 45
15, 50, 25, 25, 35
15, 50, 25, 30, 15, 15
15, 50, 25, 30, 30
15, 50, 25, 35, 25
15, 50, 25, 45, 15
15, 50, 30, 15, 15, 25
15, 50, 30, 15, 25, 15
15, 50, 30, 25, 15, 15
15, 50, 30, 25, 30
15, 50, 30, 30, 25
15, 50, 30, 55
15, 50, 35, 15, 35
15, 50, 35, 25, 25
15, 50, 35, 35, 15
15, 50, 35, 50
15, 50, 45, 15, 25
15, 50, 45, 25, 15
15, 50, 50, 35
15, 50, 55, 15, 15
15, 50, 55, 30
15, 50, 70, 15
15, 55, 15, 15, 15, 35
15, 55, 15, 15, 25, 25
15, 55, 15, 15, 35, 15
15, 55, 15, 15, 50
15, 55, 15, 25, 15, 25
15, 55, 15, 25, 25, 15
15, 55, 15, 30, 35
15, 55, 15, 35, 15, 15
15, 55, 15, 35, 30
15, 55, 15, 50, 15
15, 55, 25, 15, 15, 25
15, 55, 25, 15, 25, 15
15, 55, 25, 25, 15, 15
15, 55, 25, 25, 30
15, 55, 25, 30, 25
15, 55, 25, 55
15, 55, 30, 15, 35
15, 55, 30, 25, 25
15, 55, 30, 35, 15
15, 55, 30, 50
15, 55, 35, 15, 15, 15
15, 55, 35, 15, 30
15, 55, 35, 30, 15
15, 55, 35, 45
15, 55, 45, 35
15, 55, 50, 15, 15
15, 55, 50, 30
15, 55, 55, 25
15, 55, 80
15, 70, 15, 15, 35
15, 70, 15, 25, 25
15, 70, 15, 35, 15
15, 70, 15, 50
15, 70, 25, 15, 25
15, 70, 25, 25, 15
15, 70, 30, 35
15, 70, 35, 15, 15
15, 70, 35, 30
15, 70, 50, 15
15, 80, 15, 15, 25
15, 80, 15, 25, 15
15, 80, 25, 15, 15
15, 80, 25, 30
15, 80, 30, 25
15, 80, 55
15, 100, 35
25, 15, 15, 15, 15, 15, 15, 35
25, 15, 15, 15, 15, 15, 25, 25
25, 15, 15, 15, 15, 15, 35, 15
25, 15, 15, 15, 15, 15, 50
25, 15, 15, 15, 15, 25, 15, 25
25, 15, 15, 15, 15, 25, 25, 15
25, 15, 15, 15, 15, 30, 35
25, 15, 15, 15, 15, 35, 15, 15
25, 15, 15, 15, 15, 35, 30
25, 15, 15, 15, 15, 50, 15
25, 15, 15, 15, 25, 15, 15, 25
25, 15, 15, 15, 25, 15, 25, 15
25, 15, 15, 15, 25, 25, 15, 15
25, 15, 15, 15, 25, 25, 30
25, 15, 15, 15, 25, 30, 25
25, 15, 15, 15, 25, 55
25, 15, 15, 15, 30, 15, 35
25, 15, 15, 15, 30, 25, 25
25, 15, 15, 15, 30, 35, 15
25, 15, 15, 15, 30, 50
25, 15, 15, 15, 35, 15, 15, 15
25, 15, 15, 15, 35, 15, 30
25, 15, 15, 15, 35, 30, 15
25, 15, 15, 15, 35, 45
25, 15, 15, 15, 45, 35
25, 15, 15, 15, 50, 15, 15
25, 15, 15, 15, 50, 30
25, 15, 15, 15, 55, 25
25, 15, 15, 15, 80
25, 15, 15, 25, 15, 15, 15, 25
25, 15, 15, 25, 15, 15, 25, 15
25, 15, 15, 25, 15, 25, 15, 15
25, 15, 15, 25, 15, 25, 30
25, 15, 15, 25, 15, 30, 25
25, 15, 15, 25, 15, 55
25, 15, 15, 25, 25, 15, 15, 15
25, 15, 15, 25, 25, 15, 30
25, 15, 15, 25, 25, 30, 15
25, 15, 15, 25, 25, 45
25, 15, 15, 25, 30, 15, 25
25, 15, 15, 25, 30, 25, 15
25, 15, 15, 25, 35, 35
25, 15, 15, 25, 45, 25
25, 15, 15, 25, 55, 15
25, 15, 15, 25, 70
25, 15, 15, 30, 15, 15, 35
25, 15, 15, 30, 15, 25, 25
25, 15, 15, 30, 15, 35, 15
25, 15, 15, 30, 15, 50
25, 15, 15, 30, 25, 15, 25
25, 15, 15, 30, 25, 25, 15
25, 15, 15, 30, 30, 35
25, 15, 15, 30, 35, 15, 15
25, 15, 15, 30, 35, 30
25, 15, 15, 30, 50, 15
25, 15, 15, 35, 15, 15, 15, 15
25, 15, 15, 35, 15, 15, 30
25, 15, 15, 35, 15, 30, 15
25, 15, 15, 35, 15, 45
25, 15, 15, 35, 25, 35
25, 15, 15, 35, 30, 15, 15
25, 15, 15, 35, 30, 30
25, 15, 15, 35, 35, 25
25, 15, 15, 35, 45, 15
25, 15, 15, 45, 15, 35
25, 15, 15, 45, 25, 25
25, 15, 15, 45, 35, 15
25, 15, 15, 45, 50
25, 15, 15, 50, 15, 15, 15
25, 15, 15, 50, 15, 30
25, 15, 15, 50, 30, 15
25, 15, 15, 50, 45
25, 15, 15, 55, 15, 25
25, 15, 15, 55, 25, 15
25, 15, 15, 70, 25
25, 15, 15, 80, 15
25, 15, 25, 15, 15, 15, 15, 25
25, 15, 25, 15, 15, 15, 25, 15
25, 15, 25, 15, 15, 25, 15, 15
25, 15, 25, 15, 15, 25, 30
25, 15, 25, 15, 15, 30, 25
25, 15, 25, 15, 15, 55
25, 15, 25, 15, 25, 15, 15, 15
25, 15, 25, 15, 25, 15, 30
25, 15, 25, 15, 25, 30, 15
25, 15, 25, 15, 25, 45
25, 15, 25, 15, 30, 15, 25
25, 15, 25, 15, 30, 25, 15
25, 15, 25, 15, 35, 35
25, 15, 25, 15, 45, 25
25, 15, 25, 15, 55, 15
25, 15, 25, 15, 70
25, 15, 25, 25, 15, 15, 15, 15
25, 15, 25, 25, 15, 15, 30
25, 15, 25, 25, 15, 30, 15
25, 15, 25, 25, 15, 45
25, 15, 25, 25, 25, 35
25, 15, 25, 25, 30, 15, 15
25, 15, 25, 25, 30, 30
25, 15, 25, 25, 35, 25
25, 15, 25, 25, 45, 15
25, 15, 25, 30, 15, 15, 25
25, 15, 25, 30, 15, 25, 15
25, 15, 25, 30, 25, 15, 15
25, 15, 25, 30, 25, 30
25, 15, 25, 30, 30, 25
25, 15, 25, 30, 55
25, 15, 25, 35, 15, 35
25, 15, 25, 35, 25, 25
25, 15, 25, 35, 35, 15
25, 15, 25, 35, 50
25, 15, 25, 45, 15, 25
25, 15, 25, 45, 25, 15
25, 15, 25, 50, 35
25, 15, 25, 55, 15, 15
25, 15, 25, 55, 30
25, 15, 25, 70, 15
25, 15, 30, 15, 15, 15, 35
25, 15, 30, 15, 15, 25, 25
25, 15, 30, 15, 15, 35, 15
25, 15, 30, 15, 15, 50
25, 15, 30, 15, 25, 15, 25
25, 15, 30, 15, 25, 25, 15
25, 15, 30, 15, 30, 35
25, 15, 30, 15, 35, 15, 15
25, 15, 30, 15, 35, 30
25, 15, 30, 15, 50, 15
25, 15, 30, 25, 15, 15, 25
25, 15, 30, 25, 15, 25, 15
25, 15, 30, 25, 25, 15, 15
25, 15, 30, 25, 25, 30
25, 15, 30, 25, 30, 25
25, 15, 30, 25, 55
25, 15, 30, 30, 15, 35
25, 15, 30, 30, 25, 25
25, 15, 30, 30, 35, 15
25, 15, 30, 30, 50
25, 15, 30, 35, 15, 15, 15
25, 15, 30, 35, 15, 30
25, 15, 30, 35, 30, 15
25, 15, 30, 35, 45
25, 15, 30, 45, 35
25, 15, 30, 50, 15, 15
25, 15, 30, 50, 30
25, 15, 30, 55, 25
25, 15, 30, 80
25, 15, 35, 15, 15, 15, 15, 15
25, 15, 35, 15, 15, 15, 30
25, 15, 35, 15, 15, 30, 15
25, 15, 35, 15, 15, 45
25, 15, 35, 15, 25, 35
25, 15, 35, 15, 30, 15, 15
25, 15, 35, 15, 30, 30
25, 15, 35, 15, 35, 25
25, 15, 35, 15, 45, 15
25, 15, 35, 25, 15, 35
25, 15, 35, 25, 25, 25
25, 15, 35, 25, 35, 15
25, 15, 35, 25, 50
25, 15, 35, 30, 15, 15, 15
25, 15, 35, 30, 15, 30
25, 15, 35, 30, 30, 15
25, 15, 35, 30, 45
25, 15, 35, 35, 15, 25
25, 15, 35, 35, 25, 15
25, 15, 35, 45, 15, 15
25, 15, 35, 45, 30
25, 15, 35, 50, 25
25, 15, 45, 15, 15, 35
25, 15, 45, 15, 25, 25
25, 15, 45, 15, 35, 15
25, 15, 45, 15, 50
25, 15, 45, 25, 15, 25
25, 15, 45, 25, 25, 15
25, 15, 45, 30, 35
25, 15, 45, 35, 15, 15
25, 15, 45, 35, 30
25, 15, 45, 50, 15
25, 15, 50, 15, 15, 15, 15
25, 15, 50, 15, 15, 30
25, 15, 50, 15, 30, 15
25, 15, 50, 15, 45
25, 15, 50, 25, 35
25, 15, 50, 30, 15, 15
25, 15, 50, 30, 30
25, 15, 50, 35, 25
25, 15, 50, 45, 15
25, 15, 55, 15, 15, 25
25, 15, 55, 15, 25, 15
25, 15, 55, 25, 15, 15
25, 15, 55, 25, 30
25, 15, 55, 30, 25
25, 15, 55, 55
25, 15, 70, 15, 25
25, 15, 70, 25, 15
25, 15, 80, 15, 15
25, 15, 80, 30
25, 25, 15, 15, 15, 15, 15, 25
25, 25, 15, 15, 15, 15, 25, 15
25, 25, 15, 15, 15, 25, 15, 15
25, 25, 15, 15, 15, 25, 30
25, 25, 15, 15, 15, 30, 25
25, 25, 15, 15, 15, 55
25, 25, 15, 15, 25, 15, 15, 15
25, 25, 15, 15, 25, 15, 30
25, 25, 15, 15, 25, 30, 15
25, 25, 15, 15, 25, 45
25, 25, 15, 15, 30, 15, 25
25, 25, 15, 15, 30, 25, 15
25, 25, 15, 15, 35, 35
25, 25, 15, 15, 45, 25
25, 25, 15, 15, 55, 15
25, 25, 15, 15, 70
25, 25, 15, 25, 15, 15, 15, 15
25, 25, 15, 25, 15, 15, 30
25, 25, 15, 25, 15, 30, 15
25, 25, 15, 25, 15, 45
25, 25, 15, 25, 25, 35
25, 25, 15, 25, 30, 15, 15
25, 25, 15, 25, 30, 30
25, 25, 15, 25, 35, 25
25, 25, 15, 25, 45, 15
25, 25, 15, 30, 15, 15, 25
25, 25, 15, 30, 15, 25, 15
25, 25, 15, 30, 25, 15, 15
25, 25, 15, 30, 25, 30
25, 25, 15, 30, 30, 25
25, 25, 15, 30, 55
25, 25, 15, 35, 15, 35
25, 25, 15, 35, 25, 25
25, 25, 15, 35, 35, 15
25, 25, 15, 35, 50
25, 25, 15, 45, 15, 25
25, 25, 15, 45, 25, 15
25, 25, 15, 50, 35
25, 25, 15, 55, 15, 15
25, 25, 15, 55, 30
25, 25, 15, 70, 15
25, 25, 25, 15, 15, 15, 15, 15
25, 25, 25, 15, 15, 15, 30
25, 25, 25, 15, 15, 30, 15
25, 25, 25, 15, 15, 45
25, 25, 25, 15, 25, 35
25, 25, 25, 15, 30, 15, 15
25, 25, 25, 15, 30, 30
25, 25, 25, 15, 35, 25
25, 25, 25, 15, 45, 15
25, 25, 25, 25, 15, 35
25, 25, 25, 25, 25, 25
25, 25, 25, 25, 35, 15
25, 25, 25, 25, 50
25, 25, 25, 30, 15, 15, 15
25, 25, 25, 30, 15, 30
25, 25, 25, 30, 30, 15
25, 25, 25, 30, 45
25, 25, 25, 35, 15, 25
25, 25, 25, 35, 25, 15
25, 25, 25, 45, 15, 15
25, 25, 25, 45, 30
25, 25, 25, 50, 25
25, 25, 30, 15, 15, 15, 25
25, 25, 30, 15, 15, 25, 15
25, 25, 30, 15, 25, 15, 15
25, 25, 30, 15, 25, 30
25, 25, 30, 15, 30, 25
25, 25, 30, 15, 55
25, 25, 30, 25, 15, 15, 15
25, 25, 30, 25, 15, 30
25, 25, 30, 25, 30, 15
25, 25, 30, 25, 45
25, 25, 30, 30, 15, 25
25, 25, 30, 30, 25, 15
25, 25, 30, 35, 35
25, 25, 30, 45, 25
25, 25, 30, 55, 15
25, 25, 30, 70
25, 25, 35, 15, 15, 35
25, 25, 35, 15, 25, 25
25, 25, 35, 15, 35, 15
25, 25, 35, 15, 50
25, 25, 35, 25, 15, 25
25, 25, 35, 25, 25, 15
25, 25, 35, 30, 35
25, 25, 35, 35, 15, 15
25, 25, 35, 35, 30
25, 25, 35, 50, 15
25, 25, 45, 15, 15, 25
25, 25, 45, 15, 25, 15
25, 25, 45, 25, 15, 15
25, 25, 45, 25, 30
25, 25, 45, 30, 25
25, 25, 45, 55
25, 25, 50, 15, 35
25, 25, 50, 25, 25
25, 25, 50, 35, 15
25, 25, 50, 50
25, 25, 55, 15, 15, 15
25, 25, 55, 15, 30
25, 25, 55, 30, 15
25, 25, 55, 45
25, 25, 70, 15, 15
25, 25, 70, 30
25, 25, 100
25, 30, 15, 15, 15, 15, 35
25, 30, 15, 15, 15, 25, 25
25, 30, 15, 15, 15, 35, 15
25, 30, 15, 15, 15, 50
25, 30, 15, 15, 25, 15, 25
25, 30, 15, 15, 25, 25, 15
25, 30, 15, 15, 30, 35
25, 30, 15, 15, 35, 15, 15
25, 30, 15, 15, 35, 30
25, 30, 15, 15, 50, 15
25, 30, 15, 25, 15, 15, 25
25, 30, 15, 25, 15, 25, 15
25, 30, 15, 25, 25, 15, 15
25, 30, 15, 25, 25, 30
25, 30, 15, 25, 30, 25
25, 30, 15, 25, 55
25, 30, 15, 30, 15, 35
25, 30, 15, 30, 25, 25
25, 30, 15, 30, 35, 15
25, 30, 15, 30, 50
25, 30, 15, 35, 15, 15, 15
25, 30, 15, 35, 15, 30
25, 30, 15, 35, 30, 15
25, 30, 15, 35, 45
25, 30, 15, 45, 35
25, 30, 15, 50, 15, 15
25, 30, 15, 50, 30
25, 30, 15, 55, 25
25, 30, 15, 80
25, 30, 25, 15, 15, 15, 25
25, 30, 25, 15, 15, 25, 15
25, 30, 25, 15, 25, 15, 15
25, 30, 25, 15, 25, 30
25, 30, 25, 15, 30, 25
25, 30, 25, 15, 55
25, 30, 25, 25, 15, 15, 15
25, 30, 25, 25, 15, 30
25, 30, 25, 25, 30, 15
25, 30, 25, 25, 45
25, 30, 25, 30, 15, 25
25, 30, 25, 30, 25, 15
25, 30, 25, 35, 35
25, 30, 25, 45, 25
25, 30, 25, 55, 15
25, 30, 25, 70
25, 30, 30, 15, 15, 35
25, 30, 30, 15, 25, 25
25, 30, 30, 15, 35, 15
25, 30, 30, 15, 50
25, 30, 30, 25, 15, 25
25, 30, 30, 25, 25, 15
25, 30, 30, 30, 35
25, 30, 30, 35, 15, 15
25, 30, 30, 35, 30
25, 30, 30, 50, 15
25, 30, 35, 15, 15, 15, 15
25, 30, 35, 15, 15, 30
25, 30, 35, 15, 30, 15
25, 30, 35, 15, 45
25, 30, 35, 25, 35
25, 30, 35, 30, 15, 15
25, 30, 35, 30, 30
25, 30, 35, 35, 25
25, 30, 35, 45, 15
25, 30, 45, 15, 35
25, 30, 45, 25, 25
25, 30, 45, 35, 15
25, 30, 45, 50
25, 30, 50, 15, 15, 15
25, 30, 50, 15, 30
25, 30, 50, 30, 15
25, 30, 50, 45
25, 30, 55, 15, 25
25, 30, 55, 25, 15
25, 30, 70, 25
25, 30, 80, 15
25, 35, 15, 15, 15, 15, 15, 15
25, 35, 15, 15, 15, 15, 30
25, 35, 15, 15, 15, 30, 15
25, 35, 15, 15, 15, 45
25, 35, 15, 15, 25, 35
25, 35, 15, 15, 30, 15, 15
25, 35, 15, 15, 30, 30
25, 35, 15, 15, 35, 25
25, 35, 15, 15, 45, 15
25, 35, 15, 25, 15, 35
25, 35, 15, 25, 25, 25
25, 35, 15, 25, 35, 15
25, 35, 15, 25, 50
25, 35, 15, 30, 15, 15, 15
25, 35, 15, 30, 15, 30
25, 35, 15, 30, 30, 15
25, 35, 15, 30, 45
25, 35, 15, 35, 15, 25
25, 35, 15, 35, 25, 15
25, 35, 15, 45, 15, 15
25, 35, 15, 45, 30
25, 35, 15, 50, 25
25, 35, 25, 15, 15, 35
25, 35, 25, 15, 25, 25
25, 35, 25, 15, 35, 15
25, 35, 25, 15, 50
25, 35, 25, 25, 15, 25
25, 35, 25, 25, 25, 15
25, 35, 25, 30, 35
25, 35, 25, 35, 15, 15
25, 35, 25, 35, 30
25, 35, 25, 50, 15
25, 35, 30, 15, 15, 15, 15
25, 35, 30, 15, 15, 30
25, 35, 30, 15, 30, 15
25, 35, 30, 15, 45
25, 35, 30, 25, 35
25, 35, 30, 30, 15, 15
25, 35, 30, 30, 30
25, 35, 30, 35, 25
25, 35, 30, 45, 15
25, 35, 35, 15, 15, 25
25, 35, 35, 15, 25, 15
25, 35, 35, 25, 15, 15
25, 35, 35, 25, 30
25, 35, 35, 30, 25
25, 35, 35, 55
25, 35, 45, 15, 15, 15
25, 35, 45, 15, 30
25, 35, 45, 30, 15
25, 35, 45, 45
25, 35, 50, 15, 25
25, 35, 50, 25, 15
25, 35, 55, 35
25, 45, 15, 15, 15, 35
25, 45, 15, 15, 25, 25
25, 45, 15, 15, 35, 15
25, 45, 15, 15, 50
25, 45, 15, 25, 15, 25
25, 45, 15, 25, 25, 15
25, 45, 15, 30, 35
25, 45, 15, 35, 15, 15
25, 45, 15, 35, 30
25, 45, 15, 50, 15
25, 45, 25, 15, 15, 25
25, 45, 25, 15, 25, 15
25, 45, 25, 25, 15, 15
25, 45, 25, 25, 30
25, 45, 25, 30, 25
25, 45, 25, 55
25, 45, 30, 15, 35
25, 45, 30, 25, 25
25, 45, 30, 35, 15
25, 45, 30, 50
25, 45, 35, 15, 15, 15
25, 45, 35, 15, 30
25, 45, 35, 30, 15
25, 45, 35, 45
25, 45, 45, 35
25, 45, 50, 15, 15
25, 45, 50, 30
25, 45, 55, 25
25, 45, 80
25, 50, 15, 15, 15, 15, 15
25, 50, 15, 15, 15, 30
25, 50, 15, 15, 30, 15
25, 50, 15, 15, 45
25, 50, 15, 25, 35
25, 50, 15, 30, 15, 15
25, 50, 15, 30, 30
25, 50, 15, 35, 25
25, 50, 15, 45, 15
25, 50, 25, 15, 35
25, 50, 25, 25, 25
25, 50, 25, 35, 15
25, 50, 25, 50
25, 50, 30, 15, 15, 15
25, 50, 30, 15, 30
25, 50, 30, 30, 15
25, 50, 30, 45
25, 50, 35, 15, 25
25, 50, 35, 25, 15
25, 50, 45, 15, 15
25, 50, 45, 30
25, 50, 50, 25
25, 55, 15, 15, 15, 25
25, 55, 15, 15, 25, 15
25, 55, 15, 25, 15, 15
25, 55, 15, 25, 30
25, 55, 15, 30, 25
25, 55, 15, 55
25, 55, 25, 15, 15, 15
25, 55, 25, 15, 30
25, 55, 25, 30, 15
25, 55, 25, 45
25, 55, 30, 15, 25
25, 55, 30, 25, 15
25, 55, 35, 35
25, 55, 45, 25
25, 55, 55, 15
25, 55, 70
25, 70, 15, 15, 25
25, 70, 15, 25, 15
25, 70, 25, 15, 15
25, 70, 25, 30
25, 70, 30, 25
25, 70, 55
25, 80, 15, 15, 15
25, 80, 15, 30
25, 80, 30, 15
25, 80, 45
25, 100, 25
30, 15, 15, 15, 15, 15, 15, 15, 15
30, 15, 15, 15, 15, 15, 15, 30
30, 15, 15, 15, 15, 15, 30, 15
30, 15, 15, 15, 15, 15, 45
30, 15, 15, 15, 15, 25, 35
30, 15, 15, 15, 15, 30, 15, 15
30, 15, 15, 15, 15, 30, 30
30, 15, 15, 15, 15, 35, 25
30, 15, 15, 15, 15, 45, 15
30, 15, 15, 15, 25, 15, 35
30, 15, 15, 15, 25, 25, 25
30, 15, 15, 15, 25, 35, 15
30, 15, 15, 15, 25, 50
30, 15, 15, 15, 30, 15, 15, 15
30, 15, 15, 15, 30, 15, 30
30, 15, 15, 15, 30, 30, 15
30, 15, 15, 15, 30, 45
30, 15, 15, 15, 35, 15, 25
30, 15, 15, 15, 35, 25, 15
30, 15, 15, 15, 45, 15, 15
30, 15, 15, 15, 45, 30
30, 15, 15, 15, 50, 25
30, 15, 15, 25, 15, 15, 35
30, 15, 15, 25, 15, 25, 25
30, 15, 15, 25, 15, 35, 15
30, 15, 15, 25, 15, 50
30, 15, 15, 25, 25, 15, 25
30, 15, 15, 25, 25, 25, 15
30, 15, 15, 25, 30, 35
30, 15, 15, 25, 35, 15, 15
30, 15, 15, 25, 35, 30
30, 15, 15, 25, 50, 15
30, 15, 15, 30, 15, 15, 15, 15
30, 15, 15, 30, 15, 15, 30
30, 15, 15, 30, 15, 30, 15
30, 15, 15, 30, 15, 45
30, 15, 15, 30, 25, 35
30, 15, 15, 30, 30, 15, 15
30, 15, 15, 30, 30, 30
30, 15, 15, 30, 35, 25
30, 15, 15, 30, 45, 15
30, 15, 15, 35, 15, 15, 25
30, 15, 15, 35, 15, 25, 15
30, 15, 15, 35, 25, 15, 15
30, 15, 15, 35, 25, 30
30, 15, 15, 35, 30, 25
30, 15, 15, 35, 55
30, 15, 15, 45, 15, 15, 15
30, 15, 15, 45, 15, 30
30, 15, 15, 45, 30, 15
30, 15, 15, 45, 45
30, 15, 15, 50, 15, 25
30, 15, 15, 50, 25, 15
30, 15, 15, 55, 35
30, 15, 25, 15, 15, 15, 35
30, 15, 25, 15, 15, 25, 25
30, 15, 25, 15, 15, 35, 15
30, 15, 25, 15, 15, 50
30, 15, 25, 15, 25, 15, 25
30, 15, 25, 15, 25, 25, 15
30, 15, 25, 15, 30, 35
30, 15, 25, 15, 35, 15, 15
30, 15, 25, 15, 35, 30
30, 15, 25, 15, 50, 15
30, 15, 25, 25, 15, 15, 25
30, 15, 25, 25, 15, 25, 15
30, 15, 25, 25, 25, 15, 15
30, 15, 25, 25, 25, 30
30, 15, 25, 25, 30, 25
30, 15, 25, 25, 55
30, 15, 25, 30, 15, 35
30, 15, 25, 30, 25, 25
30, 15, 25, 30, 35, 15
30, 15, 25, 30, 50
30, 15, 25, 35, 15, 15, 15
30, 15, 25, 35, 15, 30
30, 15, 25, 35, 30, 15
30, 15, 25, 35, 45
30, 15, 25, 45, 35
30, 15, 25, 50, 15, 15
30, 15, 25, 50, 30
30, 15, 25, 55, 25
30, 15, 25, 80
30, 15, 30, 15, 15, 15, 15, 15
30, 15, 30, 15, 15, 15, 30
30, 15, 30, 15, 15, 30, 15
30, 15, 30, 15, 15, 45
30, 15, 30, 15, 25, 35
30, 15, 30, 15, 30, 15, 15
30, 15, 30, 15, 30, 30
30, 15, 30, 15, 35, 25
30, 15, 30, 15, 45, 15
30, 15, 30, 25, 15, 35
30, 15, 30, 25, 25, 25
30, 15, 30, 25, 35, 15
30, 15, 30, 25, 50
30, 15, 30, 30, 15, 15, 15
30, 15, 30, 30, 15, 30
30, 15, 30, 30, 30, 15
30, 15, 30, 30, 45
30, 15, 30, 35, 15, 25
30, 15, 30, 35, 25, 15
30, 15, 30, 45, 15, 15
30, 15, 30, 45, 30
30, 15, 30, 50, 25
30, 15, 35, 15, 15, 15, 25
30, 15, 35, 15, 15, 25, 15
30, 15, 35, 15, 25, 15, 15
30, 15, 35, 15, 25, 30
30, 15, 35, 15, 30, 25
30, 15, 35, 15, 55
30, 15, 35, 25, 15, 15, 15
30, 15, 35, 25, 15, 30
30, 15, 35, 25, 30, 15
30, 15, 35, 25, 45
30, 15, 35, 30, 15, 25
30, 15, 35, 30, 25, 15
30, 15, 35, 35, 35
30, 15, 35, 45, 25
30, 15, 35, 55, 15
30, 15, 35, 70
30, 15, 45, 15, 15, 15, 15
30, 15, 45, 15, 15, 30
30, 15, 45, 15, 30, 15
30, 15, 45, 15, 45
30, 15, 45, 25, 35
30, 15, 45, 30, 15, 15
30, 15, 45, 30, 30
30, 15, 45, 35, 25
30, 15, 45, 45, 15
30, 15, 50, 15, 15, 25
30, 15, 50, 15, 25, 15
30, 15, 50, 25, 15, 15
30, 15, 50, 25, 30
30, 15, 50, 30, 25
30, 15, 50, 55
30, 15, 55, 15, 35
30, 15, 55, 25, 25
30, 15, 55, 35, 15
30, 15, 55, 50
30, 15, 70, 35
30, 15, 80, 25
30, 25, 15, 15, 15, 15, 35
30, 25, 15, 15, 15, 25, 25
30, 25, 15, 15, 15, 35, 15
30, 25, 15, 15, 15, 50
30, 25, 15, 15, 25, 15, 25
30, 25, 15, 15, 25, 25, 15
30, 25, 15, 15, 30, 35
30, 25, 15, 15, 35, 15, 15
30, 25, 15, 15, 35, 30
30, 25, 15, 15, 50, 15
30, 25, 15, 25, 15, 15, 25
30, 25, 15, 25, 15, 25, 15
30, 25, 15, 25, 25, 15, 15
30, 25, 15, 25, 25, 30
30, 25, 15, 25, 30, 25
30, 25, 15, 25, 55
30, 25, 15, 30, 15, 35
30, 25, 15, 30, 25, 25
30, 25, 15, 30, 35, 15
30, 25, 15, 30, 50
30, 25, 15, 35, 15, 15, 15
30, 25, 15, 35, 15, 30
30, 25, 15, 35, 30, 15
30, 25, 15, 35, 45
30, 25, 15, 45, 35
30, 25, 15, 50, 15, 15
30, 25, 15, 50, 30
30, 25, 15, 55, 25
30, 25, 15, 80
30, 25, 25, 15, 15, 15, 25
30, 25, 25, 15, 15, 25, 15
30, 25, 25, 15, 25, 15, 15
30, 25, 25, 15, 25, 30
30, 25, 25, 15, 30, 25
30, 25, 25, 15, 55
30, 25, 25, 25, 15, 15, 15
30, 25, 25, 25, 15, 30
30, 25, 25, 25, 30, 15
30, 25, 25, 25, 45
30, 25, 25, 30, 15, 25
30, 25, 25, 30, 25, 15
30, 25, 25, 35, 35
30, 25, 25, 45, 25
30, 25, 25, 55, 15
30, 25, 25, 70
30, 25, 30, 15, 15, 35
30, 25, 30, 15, 25, 25
30, 25, 30, 15, 35, 15
30, 25, 30, 15, 50
30, 25, 30, 25, 15, 25
30, 25, 30, 25, 25, 15
30, 25, 30, 30, 35
30, 25, 30, 35, 15, 15
30, 25, 30, 35, 30
30, 25, 30, 50, 15
30, 25, 35, 15, 15, 15, 15
30, 25, 35, 15, 15, 30
30, 25, 35, 15, 30, 15
30, 25, 35, 15, 45
30, 25, 35, 25, 35
30, 25, 35, 30, 15, 15
30, 25, 35, 30, 30
30, 25, 35, 35, 25
30, 25, 35, 45, 15
30, 25, 45, 15, 35
30, 25, 45, 25, 25
30, 25, 45, 35, 15
30, 25, 45, 50
30, 25, 50, 15, 15, 15
30, 25, 50, 15, 30
30, 25, 50, 30, 15
30, 25, 50, 45
30, 25, 55, 15, 25
30, 25, 55, 25, 15
30, 25, 70, 25
30, 25, 80, 15
30, 30, 15, 15, 15, 15, 15, 15
30, 30, 15, 15, 15, 15, 30
30, 30, 15, 15, 15, 30, 15
30, 30, 15, 15, 15, 45
30, 30, 15, 15, 25, 35
30, 30, 15, 15, 30, 15, 15
30, 30, 15, 15, 30, 30
30, 30, 15, 15, 35, 25
30, 30, 15, 15, 45, 15
30, 30, 15, 25, 15, 35
30, 30, 15, 25, 25, 25
30, 30, 15, 25, 35, 15
30, 30, 15, 25, 50
30, 30, 15, 30, 15, 15, 15
30, 30, 15, 30, 15, 30
30, 30, 15, 30, 30, 15
30, 30, 15, 30, 45
30, 30, 15, 35, 15, 25
30, 30, 15, 35, 25, 15
30, 30, 15, 45, 15, 15
30, 30, 15, 45, 30
30, 30, 15, 50, 25
30, 30, 25, 15, 15, 35
30, 30, 25, 15, 25, 25
30, 30, 25, 15, 35, 15
30, 30, 25, 15, 50
30, 30, 25, 25, 15, 25
30, 30, 25, 25, 25, 15
30, 30, 25, 30, 35
30, 30, 25, 35, 15, 15
30, 30, 25, 35, 30
30, 30, 25, 50, 15
30, 30, 30, 15, 15, 15, 15
30, 30, 30, 15, 15, 30
30, 30, 30, 15, 30, 15
30, 30, 30, 15, 45
30, 30, 30, 25, 35
30, 30, 30, 30, 15, 15
30, 30, 30, 30, 30
30, 30, 30, 35, 25
30, 30, 30, 45, 15
30, 30, 35, 15, 15, 25
30, 30, 35, 15, 25, 15
30, 30, 35, 25, 15, 15
30, 30, 35, 25, 30
30, 30, 35, 30, 25
30, 30, 35, 55
30, 30, 45, 15, 15, 15
30, 30, 45, 15, 30
30, 30, 45, 30, 15
30, 30, 45, 45
30, 30, 50, 15, 25
30, 30, 50, 25, 15
30, 30, 55, 35
30, 35, 15, 15, 15, 15, 25
30, 35, 15, 15, 15, 25, 15
30, 35, 15, 15, 25, 15, 15
30, 35, 15, 15, 25, 30
30, 35, 15, 15, 30, 25
30, 35, 15, 15, 55
30, 35, 15, 25, 15, 15, 15
30, 35, 15, 25, 15, 30
30, 35, 15, 25, 30, 15
30, 35, 15, 25, 45
30, 35, 15, 30, 15, 25
30, 35, 15, 30, 25, 15
30, 35, 15, 35, 35
30, 35, 15, 45, 25
30, 35, 15, 55, 15
30, 35, 15, 70
30, 35, 25, 15, 15, 15, 15
30, 35, 25, 15, 15, 30
30, 35, 25, 15, 30, 15
30, 35, 25, 15, 45
30, 35, 25, 25, 35
30, 35, 25, 30, 15, 15
30, 35, 25, 30, 30
30, 35, 25, 35, 25
30, 35, 25, 45, 15
30, 35, 30, 15, 15, 25
30, 35, 30, 15, 25, 15
30, 35, 30, 25, 15, 15
30, 35, 30, 25, 30
30, 35, 30, 30, 25
30, 35, 30, 55
30, 35, 35, 15, 35
30, 35, 35, 25, 25
30, 35, 35, 35, 15
30, 35, 35, 50
30, 35, 45, 15, 25
30, 35, 45, 25, 15
30, 35, 50, 35
30, 35, 55, 15, 15
30, 35, 55, 30
30, 35, 70, 15
30, 45, 15, 15, 15, 15, 15
30, 45, 15, 15, 15, 30
30, 45, 15, 15, 30, 15
30, 45, 15, 15, 45
30, 45, 15, 25, 35
30, 45, 15, 30, 15, 15
30, 45, 15, 30, 30
30, 45, 15, 35, 25
30, 45, 15, 45, 15
30, 45, 25, 15, 35
30, 45, 25, 25, 25
30, 45, 25, 35, 15
30, 45, 25, 50
30, 45, 30, 15, 15, 15
30, 45, 30, 15, 30
30, 45, 30, 30, 15
30, 45, 30, 45
30, 45, 35, 15, 25
30, 45, 35, 25, 15
30, 45, 45, 15, 15
30, 45, 45, 30
30, 45, 50, 25
30, 50, 15, 15, 15, 25
30, 50, 15, 15, 25, 15
30, 50, 15, 25, 15, 15
30, 50, 15, 25, 30
30, 50, 15, 30, 25
30, 50, 15, 55
30, 50, 25, 15, 15, 15
30, 50, 25, 15, 30
30, 50, 25, 30, 15
30, 50, 25, 45
30, 50, 30, 15, 25
30, 50, 30, 25, 15
30, 50, 35, 35
30, 50, 45, 25
30, 50, 55, 15
30, 50, 70
30, 55, 15, 15, 35
30, 55, 15, 25, 25
30, 55, 15, 35, 15
30, 55, 15, 50
30, 55, 25, 15, 25
30, 55, 25, 25, 15
30, 55, 30, 35
30, 55, 35, 15, 15
30, 55, 35, 30
30, 55, 50, 15
30, 70, 15, 35
30, 70, 25, 25
30, 70, 35, 15
30, 70, 50
30, 80, 15, 25
30, 80, 25, 15
35, 15, 15, 15, 15, 15, 15, 25
35, 15, 15, 15, 15, 15, 25, 15
35, 15, 15, 15, 15, 25, 15, 15
35, 15, 15, 15, 15, 25, 30
35, 15, 15, 15, 15, 30, 25
35, 15, 15, 15, 15, 55
35, 15, 15, 15, 25, 15, 15, 15
35, 15, 15, 15, 25, 15, 30
35, 15, 15, 15, 25, 30, 15
35, 15, 15, 15, 25, 45
35, 15, 15, 15, 30, 15, 25
35, 15, 15, 15, 30, 25, 15
35, 15, 15, 15, 35, 35
35, 15, 15, 15, 45, 25
35, 15, 15, 15, 55, 15
35, 15, 15, 15, 70
35, 15, 15, 25, 15, 15, 15, 15
35, 15, 15, 25, 15, 15, 30
35, 15, 15, 25, 15, 30, 15
35, 15, 15, 25, 15, 45
35, 15, 15, 25, 25, 35
35, 15, 15, 25, 30, 15, 15
35, 15, 15, 25, 30, 30
35, 15, 15, 25, 35, 25
35, 15, 15, 25, 45, 15
35, 15, 15, 30, 15, 15, 25
35, 15, 15, 30, 15, 25, 15
35, 15, 15, 30, 25, 15, 15
35, 15, 15, 30, 25, 30
35, 15, 15, 30, 30, 25
35, 15, 15, 30, 55
35, 15, 15, 35, 15, 35
35, 15, 15, 35, 25, 25
35, 15, 15, 35, 35, 15
35, 15, 15, 35, 50
35, 15, 15, 45, 15, 25
35, 15, 15, 45, 25, 15
35, 15, 15, 50, 35
35, 15, 15, 55, 15, 15
35, 15, 15, 55, 30
35, 15, 15, 70, 15
35, 15, 25, 15, 15, 15, 15, 15
35, 15, 25, 15, 15, 15, 30
35, 15, 25, 15, 15, 30, 15
35, 15, 25, 15, 15, 45
35, 15, 25, 15, 25, 35
35, 15, 25, 15, 30, 15, 15
35, 15, 25, 15, 30, 30
35, 15, 25, 15, 35, 25
35, 15, 25, 15, 45, 15
35, 15, 25, 25, 15, 35
35, 15, 25, 25, 25, 25
35, 15, 25, 25, 35, 15
35, 15, 25, 25, 50
35, 15, 25, 30, 15, 15, 15
35, 15, 25, 30, 15, 30
35, 15, 25, 30, 30, 15
35, 15, 25, 30, 45
35, 15, 25, 35, 15, 25
35, 15, 25, 35, 25, 15
35, 15, 25, 45, 15, 15
35, 15, 25, 45, 30
35, 15, 25, 50, 25
35, 15, 30, 15, 15, 15, 25
35, 15, 30, 15, 15, 25, 15
35, 15, 30, 15, 25, 15, 15
35, 15, 30, 15, 25, 30
35, 15, 30, 15, 30, 25
35, 15, 30, 15, 55
35, 15, 30, 25, 15, 15, 15
35, 15, 30, 25, 15, 30
35, 15, 30, 25, 30, 15
35, 15, 30, 25, 45
35, 15, 30, 30, 15, 25
35, 15, 30, 30, 25, 15
35, 15, 30, 35, 35
35, 15, 30, 45, 25
35, 15, 30, 55, 15
35, 15, 30, 70
35, 15, 35, 15, 15, 35
35, 15, 35, 15, 25, 25
35, 15, 35, 15, 35, 15
35, 15, 35, 15, 50
35, 15, 35, 25, 15, 25
35, 15, 35, 25, 25, 15
35, 15, 35, 30, 35
35, 15, 35, 35, 15, 15
35, 15, 35, 35, 30
35, 15, 35, 50, 15
35, 15, 45, 15, 15, 25
35, 15, 45, 15, 25, 15
35, 15, 45, 25, 15, 15
35, 15, 45, 25, 30
35, 15, 45, 30, 25
35, 15, 45, 55
35, 15, 50, 15, 35
35, 15, 50, 25, 25
35, 15, 50, 35, 15
35, 15, 50, 50
35, 15, 55, 15, 15, 15
35, 15, 55, 15, 30
35, 15, 55, 30, 15
35, 15, 55, 45
35, 15, 70, 15, 15
35, 15, 70, 30
35, 15, 100
35, 25, 15, 15, 15, 15, 15, 15
35, 25, 15, 15, 15, 15, 30
35, 25, 15, 15, 15, 30, 15
35, 25, 15, 15, 15, 45
35, 25, 15, 15, 25, 35
35, 25, 15, 15, 30, 15, 15
35, 25, 15, 15, 30, 30
35, 25, 15, 15, 35, 25
35, 25, 15, 15, 45, 15
35, 25, 15, 25, 15, 35
35, 25, 15, 25, 25, 25
35, 25, 15, 25, 35, 15
35, 25, 15, 25, 50
35, 25, 15, 30, 15, 15, 15
35, 25, 15, 30, 15, 30
35, 25, 15, 30, 30, 15
35, 25, 15, 30, 45
35, 25, 15, 35, 15, 25
35, 25, 15, 35, 25, 15
35, 25, 15, 45, 15, 15
35, 25, 15, 45, 30
35, 25, 15, 50, 25
35, 25, 25, 15, 15, 35
35, 25, 25, 15, 25, 25
35, 25, 25, 15, 35, 15
35, 25, 25, 15, 50
35, 25, 25, 25, 15, 25
35, 25, 25, 25, 25, 15
35, 25, 25, 30, 35
35, 25, 25, 35, 15, 15
35, 25, 25, 35, 30
35, 25, 25, 50, 15
35, 25, 30, 15, 15, 15, 15
35, 25, 30, 15, 15, 30
35, 25, 30, 15, 30, 15
35, 25, 30, 15, 45
35, 25, 30, 25, 35
35, 25, 30, 30, 15, 15
35, 25, 30, 30, 30
35, 25, 30, 35, 25
35, 25, 30, 45, 15
35, 25, 35, 15, 15, 25
35, 25, 35, 15, 25, 15
35, 25, 35, 25, 15, 15
35, 25, 35, 25, 30
35, 25, 35, 30, 25
35, 25, 35, 55
35, 25, 45, 15, 15, 15
35, 25, 45, 15, 30
35, 25, 45, 30, 15
35, 25, 45, 45
35, 25, 50, 15, 25
35, 25, 50, 25, 15
35, 25, 55, 35
35, 30, 15, 15, 15, 15, 25
35, 30, 15, 15, 15, 25, 15
35, 30, 15, 15, 25, 15, 15
35, 30, 15, 15, 25, 30
35, 30, 15, 15, 30, 25
35, 30, 15, 15, 55
35, 30, 15, 25, 15, 15, 15
35, 30, 15, 25, 15, 30
35, 30, 15, 25, 30, 15
35, 30, 15, 25, 45
35, 30, 15, 30, 15, 25
35, 30, 15, 30, 25, 15
35, 30, 15, 35, 35
35, 30, 15, 45, 25
35, 30, 15, 55, 15
35, 30, 15, 70
35, 30, 25, 15, 15, 15, 15
35, 30, 25, 15, 15, 30
35, 30, 25, 15, 30, 15
35, 30, 25, 15, 45
35, 30, 25, 25, 35
35, 30, 25, 30, 15, 15
35, 30, 25, 30, 30
35, 30, 25, 35, 25
35, 30, 25, 45, 15
35, 30, 30, 15, 15, 25
35, 30, 30, 15, 25, 15
35, 30, 30, 25, 15, 15
35, 30, 30, 25, 30
35, 30, 30, 30, 25
35, 30, 30, 55
35, 30, 35, 15, 35
35, 30, 35, 25, 25
35, 30, 35, 35, 15
35, 30, 35, 50
35, 30, 45, 15, 25
35, 30, 45, 25, 15
35, 30, 50, 35
35, 30, 55, 15, 15
35, 30, 55, 30
35, 30, 70, 15
35, 35, 15, 15, 15, 35
35, 35, 15, 15, 25, 25
35, 35, 15, 15, 35, 15
35, 35, 15, 15, 50
35, 35, 15, 25, 15, 25
35, 35, 15, 25, 25, 15
35, 35, 15, 30, 35
35, 35, 15, 35, 15, 15
35, 35, 15, 35, 30
35, 35, 15, 50, 15
35, 35, 25, 15, 15, 25
35, 35, 25, 15, 25, 15
35, 35, 25, 25, 15, 15
35, 35, 25, 25, 30
35, 35, 25, 30, 25
35, 35, 25, 55
35, 35, 30, 15, 35
35, 35, 30, 25, 25
35, 35, 30, 35, 15
35, 35, 30, 50
35, 35, 35, 15, 15, 15
35, 35, 35, 15, 30
35, 35, 35, 30, 15
35, 35, 35, 45
35, 35, 45, 35
35, 35, 50, 15, 15
35, 35, 50, 30
35, 35, 55, 25
35, 35, 80
35, 45, 15, 15, 15, 25
35, 45, 15, 15, 25, 15
35, 45, 15, 25, 15, 15
35, 45, 15, 25, 30
35, 45, 15, 30, 25
35, 45, 15, 55
35, 45, 25, 15, 15, 15
35, 45, 25, 15, 30
35, 45, 25, 30, 15
35, 45, 25, 45
35, 45, 30, 15, 25
35, 45, 30, 25, 15
35, 45, 35, 35
35, 45, 45, 25
35, 45, 55, 15
35, 45, 70
35, 50, 15, 15, 35
35, 50, 15, 25, 25
35, 50, 15, 35, 15
35, 50, 15, 50
35, 50, 25, 15, 25
35, 50, 25, 25, 15
35, 50, 30, 35
35, 50, 35, 15, 15
35, 50, 35, 30
35, 50, 50, 15
35, 55, 15, 15, 15, 15
35, 55, 15, 15, 30
35, 55, 15, 30, 15
35, 55, 15, 45
35, 55, 25, 35
35, 55, 30, 15, 15
35, 55, 30, 30
35, 55, 35, 25
35, 55, 45, 15
35, 70, 15, 15, 15
35, 70, 15, 30
35, 70, 30, 15
35, 70, 45
35, 80, 35
35, 100, 15
45, 15, 15, 15, 15, 15, 15, 15
45, 15, 15, 15, 15, 15, 30
45, 15, 15, 15, 15, 30, 15
45, 15, 15, 15, 15, 45
45, 15, 15, 15, 25, 35
45, 15, 15, 15, 30, 15, 15
45, 15, 15, 15, 30, 30
45, 15, 15, 15, 35, 25
45, 15, 15, 15, 45, 15
45, 15, 15, 25, 15, 35
45, 15, 15, 25, 25, 25
45, 15, 15, 25, 35, 15
45, 15, 15, 25, 50
45, 15, 15, 30, 15, 15, 15
45, 15, 15, 30, 15, 30
45, 15, 15, 30, 30, 15
45, 15, 15, 30, 45
45, 15, 15, 35, 15, 25
45, 15, 15, 35, 25, 15
45, 15, 15, 45, 15, 15
45, 15, 15, 45, 30
45, 15, 15, 50, 25
45, 15, 25, 15, 15, 35
45, 15, 25, 15, 25, 25
45, 15, 25, 15, 35, 15
45, 15, 25, 15, 50
45, 15, 25, 25, 15, 25
45, 15, 25, 25, 25, 15
45, 15, 25, 30, 35
45, 15, 25, 35, 15, 15
45, 15, 25, 35, 30
45, 15, 25, 50, 15
45, 15, 30, 15, 15, 15, 15
45, 15, 30, 15, 15, 30
45, 15, 30, 15, 30, 15
45, 15, 30, 15, 45
45, 15, 30, 25, 35
45, 15, 30, 30, 15, 15
45, 15, 30, 30, 30
45, 15, 30, 35, 25
45, 15, 30, 45, 15
45, 15, 35, 15, 15, 25
45, 15, 35, 15, 25, 15
45, 15, 35, 25, 15, 15
45, 15, 35, 25, 30
45, 15, 35, 30, 25
45, 15, 35, 55
45, 15, 45, 15, 15, 15
45, 15, 45, 15, 30
45, 15, 45, 30, 15
45, 15, 45, 45
45, 15, 50, 15, 25
45, 15, 50, 25, 15
45, 15, 55, 35
45, 25, 15, 15, 15, 35
45, 25, 15, 15, 25, 25
45, 25, 15, 15, 35, 15
45, 25, 15, 15, 50
45, 25, 15, 25, 15, 25
45, 25, 15, 25, 25, 15
45, 25, 15, 30, 35
45, 25, 15, 35, 15, 15
45, 25, 15, 35, 30
45, 25, 15, 50, 15
45, 25, 25, 15, 15, 25
45, 25, 25, 15, 25, 15
45, 25, 25, 25, 15, 15
45, 25, 25, 25, 30
45, 25, 25, 30, 25
45, 25, 25, 55
45, 25, 30, 15, 35
45, 25, 30, 25, 25
45, 25, 30, 35, 15
45, 25, 30, 50
45, 25, 35, 15, 15, 15
45, 25, 35, 15, 30
45, 25, 35, 30, 15
45, 25, 35, 45
45, 25, 45, 35
45, 25, 50, 15, 15
45, 25, 50, 30
45, 25, 55, 25
45, 25, 80
45, 30, 15, 15, 15, 15, 15
45, 30, 15, 15, 15, 30
45, 30, 15, 15, 30, 15
45, 30, 15, 15, 45
45, 30, 15, 25, 35
45, 30, 15, 30, 15, 15
45, 30, 15, 30, 30
45, 30, 15, 35, 25
45, 30, 15, 45, 15
45, 30, 25, 15, 35
45, 30, 25, 25, 25
45, 30, 25, 35, 15
45, 30, 25, 50
45, 30, 30, 15, 15, 15
45, 30, 30, 15, 30
45, 30, 30, 30, 15
45, 30, 30, 45
45, 30, 35, 15, 25
45, 30, 35, 25, 15
45, 30, 45, 15, 15
45, 30, 45, 30
45, 30, 50, 25
45, 35, 15, 15, 15, 25
45, 35, 15, 15, 25, 15
45, 35, 15, 25, 15, 15
45, 35, 15, 25, 30
45, 35, 15, 30, 25
45, 35, 15, 55
45, 35, 25, 15, 15, 15
45, 35, 25, 15, 30
45, 35, 25, 30, 15
45, 35, 25, 45
45, 35, 30, 15, 25
45, 35, 30, 25, 15
45, 35, 35, 35
45, 35, 45, 25
45, 35, 55, 15
45, 35, 70
45, 45, 15, 15, 15, 15
45, 45, 15, 15, 30
45, 45, 15, 30, 15
45, 45, 15, 45
45, 45, 25, 35
45, 45, 30, 15, 15
45, 45, 30, 30
45, 45, 35, 25
45, 45, 45, 15
45, 50, 15, 15, 25
45, 50, 15, 25, 15
45, 50, 25, 15, 15
45, 50, 25, 30
45, 50, 30, 25
45, 50, 55
45, 55, 15, 35
45, 55, 25, 25
45, 55, 35, 15
45, 55, 50
45, 70, 35
45, 80, 25
50, 15, 15, 15, 15, 15, 25
50, 15, 15, 15, 15, 25, 15
50, 15, 15, 15, 25, 15, 15
50, 15, 15, 15, 25, 30
50, 15, 15, 15, 30, 25
50, 15, 15, 15, 55
50, 15, 15, 25, 15, 15, 15
50, 15, 15, 25, 15, 30
50, 15, 15, 25, 30, 15
50, 15, 15, 25, 45
50, 15, 15, 30, 15, 25
50, 15, 15, 30, 25, 15
50, 15, 15, 35, 35
50, 15, 15, 45, 25
50, 15, 15, 55, 15
50, 15, 15, 70
50, 15, 25, 15, 15, 15, 15
50, 15, 25, 15, 15, 30
50, 15, 25, 15, 30, 15
50, 15, 25, 15, 45
50, 15, 25, 25, 35
50, 15, 25, 30, 15, 15
50, 15, 25, 30, 30
50, 15, 25, 35, 25
50, 15, 25, 45, 15
50, 15, 30, 15, 15, 25
50, 15, 30, 15, 25, 15
50, 15, 30, 25, 15, 15
50, 15, 30, 25, 30
50, 15, 30, 30, 25
50, 15, 30, 55
50, 15, 35, 15, 35
50, 15, 35, 25, 25
50, 15, 35, 35, 15
50, 15, 35, 50
50, 15, 45, 15, 25
50, 15, 45, 25, 15
50, 15, 50, 35
50, 15, 55, 15, 15
50, 15, 55, 30
50, 15, 70, 15
50, 25, 15, 15, 15, 15, 15
50, 25, 15, 15, 15, 30
50, 25, 15, 15, 30, 15
50, 25, 15, 15, 45
50, 25, 15, 25, 35
50, 25, 15, 30, 15, 15
50, 25, 15, 30, 30
50, 25, 15, 35, 25
50, 25, 15, 45, 15
50, 25, 25, 15, 35
50, 25, 25, 25, 25
50, 25, 25, 35, 15
50, 25, 25, 50
50, 25, 30, 15, 15, 15
50, 25, 30, 15, 30
50, 25, 30, 30, 15
50, 25, 30, 45
50, 25, 35, 15, 25
50, 25, 35, 25, 15
50, 25, 45, 15, 15
50, 25, 45, 30
50, 25, 50, 25
50, 30, 15, 15, 15, 25
50, 30, 15, 15, 25, 15
50, 30, 15, 25, 15, 15
50, 30, 15, 25, 30
50, 30, 15, 30, 25
50, 30, 15, 55
50, 30, 25, 15, 15, 15
50, 30, 25, 15, 30
50, 30, 25, 30, 15
50, 30, 25, 45
50, 30, 30, 15, 25
50, 30, 30, 25, 15
50, 30, 35, 35
50, 30, 45, 25
50, 30, 55, 15
50, 30, 70
50, 35, 15, 15, 35
50, 35, 15, 25, 25
50, 35, 15, 35, 15
50, 35, 15, 50
50, 35, 25, 15, 25
50, 35, 25, 25, 15
50, 35, 30, 35
50, 35, 35, 15, 15
50, 35, 35, 30
50, 35, 50, 15
50, 45, 15, 15, 25
50, 45, 15, 25, 15
50, 45, 25, 15, 15
50, 45, 25, 30
50, 45, 30, 25
50, 45, 55
50, 50, 15, 35
50, 50, 25, 25
50, 50, 35, 15
50, 50, 50
50, 55, 15, 15, 15
50, 55, 15, 30
50, 55, 30, 15
50, 55, 45
50, 70, 15, 15
50, 70, 30
50, 100
55, 15, 15, 15, 15, 35
55, 15, 15, 15, 25, 25
55, 15, 15, 15, 35, 15
55, 15, 15, 15, 50
55, 15, 15, 25, 15, 25
55, 15, 15, 25, 25, 15
55, 15, 15, 30, 35
55, 15, 15, 35, 15, 15
55, 15, 15, 35, 30
55, 15, 15, 50, 15
55, 15, 25, 15, 15, 25
55, 15, 25, 15, 25, 15
55, 15, 25, 25, 15, 15
55, 15, 25, 25, 30
55, 15, 25, 30, 25
55, 15, 25, 55
55, 15, 30, 15, 35
55, 15, 30, 25, 25
55, 15, 30, 35, 15
55, 15, 30, 50
55, 15, 35, 15, 15, 15
55, 15, 35, 15, 30
55, 15, 35, 30, 15
55, 15, 35, 45
55, 15, 45, 35
55, 15, 50, 15, 15
55, 15, 50, 30
55, 15, 55, 25
55, 15, 80
55, 25, 15, 15, 15, 25
55, 25, 15, 15, 25, 15
55, 25, 15, 25, 15, 15
55, 25, 15, 25, 30
55, 25, 15, 30, 25
55, 25, 15, 55
55, 25, 25, 15, 15, 15
55, 25, 25, 15, 30
55, 25, 25, 30, 15
55, 25, 25, 45
55, 25, 30, 15, 25
55, 25, 30, 25, 15
55, 25, 35, 35
55, 25, 45, 25
55, 25, 55, 15
55, 25, 70
55, 30, 15, 15, 35
55, 30, 15, 25, 25
55, 30, 15, 35, 15
55, 30, 15, 50
55, 30, 25, 15, 25
55, 30, 25, 25, 15
55, 30, 30, 35
55, 30, 35, 15, 15
55, 30, 35, 30
55, 30, 50, 15
55, 35, 15, 15, 15, 15
55, 35, 15, 15, 30
55, 35, 15, 30, 15
55, 35, 15, 45
55, 35, 25, 35
55, 35, 30, 15, 15
55, 35, 30, 30
55, 35, 35, 25
55, 35, 45, 15
55, 45, 15, 35
55, 45, 25, 25
55, 45, 35, 15
55, 45, 50
55, 50, 15, 15, 15
55, 50, 15, 30
55, 50, 30, 15
55, 50, 45
55, 55, 15, 25
55, 55, 25, 15
55, 70, 25
55, 80, 15
70, 15, 15, 15, 35
70, 15, 15, 25, 25
70, 15, 15, 35, 15
70, 15, 15, 50
70, 15, 25, 15, 25
70, 15, 25, 25, 15
70, 15, 30, 35
70, 15, 35, 15, 15
70, 15, 35, 30
70, 15, 50, 15
70, 25, 15, 15, 25
70, 25, 15, 25, 15
70, 25, 25, 15, 15
70, 25, 25, 30
70, 25, 30, 25
70, 25, 55
70, 30, 15, 35
70, 30, 25, 25
70, 30, 35, 15
70, 30, 50
70, 35, 15, 15, 15
70, 35, 15, 30
70, 35, 30, 15
70, 35, 45
70, 45, 35
70, 50, 15, 15
70, 50, 30
70, 55, 25
70, 80
80, 15, 15, 15, 25
80, 15, 15, 25, 15
80, 15, 25, 15, 15
80, 15, 25, 30
80, 15, 30, 25
80, 15, 55
80, 25, 15, 15, 15
80, 25, 15, 30
80, 25, 30, 15
80, 25, 45
80, 30, 15, 25
80, 30, 25, 15
80, 35, 35
80, 45, 25
80, 55, 15
80, 70
100, 15, 35
100, 25, 25
100, 35, 15
100, 50
Press any key to continue . . .

点赞 评论
• 这是不考虑顺序

`````` foreach (int n in arr.Where(x => x + feed.Sum() <= sum))
修改为
foreach (int n in arr.Where(x => x + feed.Sum() <= sum && x >= feed.Last()))
``````

15, 15, 15, 15, 15, 15, 15, 15, 15, 15
15, 15, 15, 15, 15, 15, 15, 15, 30
15, 15, 15, 15, 15, 15, 15, 45
15, 15, 15, 15, 15, 15, 25, 35
15, 15, 15, 15, 15, 15, 30, 30
15, 15, 15, 15, 15, 25, 25, 25
15, 15, 15, 15, 15, 25, 50
15, 15, 15, 15, 15, 30, 45
15, 15, 15, 15, 25, 30, 35
15, 15, 15, 15, 30, 30, 30
15, 15, 15, 15, 35, 55
15, 15, 15, 15, 45, 45
15, 15, 15, 25, 25, 25, 30
15, 15, 15, 25, 25, 55
15, 15, 15, 25, 30, 50
15, 15, 15, 25, 35, 45
15, 15, 15, 25, 80
15, 15, 15, 30, 30, 45
15, 15, 15, 35, 35, 35
15, 15, 15, 35, 70
15, 15, 15, 50, 55
15, 15, 25, 25, 25, 45
15, 15, 25, 25, 35, 35
15, 15, 25, 25, 70
15, 15, 25, 30, 30, 35
15, 15, 25, 45, 50
15, 15, 30, 30, 30, 30
15, 15, 30, 35, 55
15, 15, 30, 45, 45
15, 15, 35, 35, 50
15, 15, 50, 70
15, 25, 25, 25, 25, 35
15, 25, 25, 25, 30, 30
15, 25, 25, 30, 55
15, 25, 25, 35, 50
15, 25, 30, 30, 50
15, 25, 30, 35, 45
15, 25, 30, 80
15, 25, 55, 55
15, 30, 30, 30, 45
15, 30, 35, 35, 35
15, 30, 35, 70
15, 30, 50, 55
15, 35, 45, 55
15, 35, 50, 50
15, 35, 100
15, 45, 45, 45
15, 55, 80
25, 25, 25, 25, 25, 25
25, 25, 25, 25, 50
25, 25, 25, 30, 45
25, 25, 30, 35, 35
25, 25, 30, 70
25, 25, 45, 55
25, 25, 50, 50
25, 25, 100
25, 30, 30, 30, 35
25, 30, 45, 50
25, 35, 35, 55
25, 35, 45, 45
25, 45, 80
25, 55, 70
30, 30, 30, 30, 30
30, 30, 35, 55
30, 30, 45, 45
30, 35, 35, 50
30, 50, 70
35, 35, 35, 45
35, 35, 80
35, 45, 70
45, 50, 55
50, 50, 50
50, 100
70, 80
Press any key to continue . . .

点赞 评论
• `````` using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] arr = { 15, 25, 30, 35, 45, 50, 55, 70, 80, 100 };
int sum = 150;
foreach (var item in Solve(arr, sum, 4)) //最大4个
{
Console.WriteLine(string.Join(", ", item.Skip(1)));
}
}
static IEnumerable<IEnumerable<int>> Solve(int[] arr, int sum, int lim, IEnumerable<int> feed = null)
{
if (feed == null) feed = new List<int>() { 0 };
if (feed.Sum() == sum) yield return feed;
if (feed.Count() > lim) yield break;
foreach (int n in arr.Where(x => x + feed.Sum() <= sum && x >= feed.Last()))
{
foreach (var item in Solve(arr, sum, lim, feed.Concat(new int[] { n }))) yield return item;
}
}
}
}

``````

15, 15, 50, 70
15, 25, 30, 80
15, 25, 55, 55
15, 30, 35, 70
15, 30, 50, 55
15, 35, 45, 55
15, 35, 50, 50
15, 35, 100
15, 45, 45, 45
15, 55, 80
25, 25, 30, 70
25, 25, 45, 55
25, 25, 50, 50
25, 25, 100
25, 30, 45, 50
25, 35, 35, 55
25, 35, 45, 45
25, 45, 80
25, 55, 70
30, 30, 35, 55
30, 30, 45, 45
30, 35, 35, 50
30, 50, 70
35, 35, 35, 45
35, 35, 80
35, 45, 70
45, 50, 55
50, 50, 50
50, 100
70, 80
Press any key to continue . . .

点赞 评论
• 还有，我要友情提醒一句，如果用浮点数，等于比较不能直接用 == 判断，应该用两个数字相减绝对值小于一个很小的数字判断，否则会因为精度误差而漏掉结果。

点赞 评论
• qq_17806019 2018-09-07 01:22

提供一下我的思路：首先将数组做一个排序，按由大及小的相加来计算是否为目标值，若和值大于目标值，则执行下一趟循环，若和值等于目标值则计数器加一，若和值小于目标值则执行迭代操作，代码如下（默认数组已经排序）
int GetSum(int[] arry,int start,int lastdata,int target){
int count=0;
for(int i=start;i int temp_lastdata=lastdata+arry[i];
if(temp_lastdata>target){
continue;
}else if (temp_lastdata==target) {
count++;
}else {

``````            count=count+GetSum(arry, i, temp_lastdata, target);
}
}
return count;
}
``````
点赞 评论
• 小潘哈哈哈 2021-03-09 13:03
`````` 任意个数相加和为150的下标数据：第1组:4,3,2,1,0             |第2组:8,2,1,0             |第3组:7,3,2,0             |第4组:6,5,2,0             |第5组:6,4,3,0             |第6组:9,3,0             |第7组:8,6,0             |第8组:5,4,2,1             |第9组:8,4,1             |第10组:7,6,1             |第11组:7,5,2             |第12组:7,4,3             |第13组:6,5,4             |第14组:9,5             |第15组:8,7             |
{
List<int> nums = new List<int> { 15, 25, 30, 35, 45,50,55,70,80,100 };
var values = Add(0, nums, 0);
int index = 1;
string str = "任意个数相加和为150的下标数据：";
foreach (var item in values)
{
str += \$@"第{index}组:{string.Join(",", item.PathIndex)}             |";
index++;
}
}
public static List<Values> Add(int a, List<int> nums, int index)
{
List<Values> values = new List<Values>();
for (int i = index; i < nums.Count; i++)
{
if (a == nums[i])
continue;
else if (a + nums[i] == 150)
{
continue;
}
else if (nums[i] > 150)
continue;
else
{
var temp = Add(a + nums[i], nums, i + 1);
}

}
return values;
}
public class Values
{
public Values(int i)
{