Team Match(纯暴力解决)

编程入门 行业动态 更新时间:2024-10-22 08:24:07

Team Match(纯<a href=https://www.elefans.com/category/jswz/34/1770045.html style=暴力解决)"/>

Team Match(纯暴力解决)

【Problem Description】

The programming competition not only depends on the programmers, but also directed by the coaches. Mr Z is a coach who direct n players to take part in the Guangxi Province Collegiate Programming Contest. We assume that a team is consisted of 3 players whose ability is x, y, z respectively and x >= y >= z. Then the team’s total ability is 3 * x + 2 * y + 1 * z; And for a team, if its ability is not lower than the gold medal level m, the team will certainly win the gold medal. Mr Z would like to match teams to gain as many gold medals as possible, could you tell him how many gold medals it is?

【Input】

The first line is an integer T which indicates the case number.

And as for each case, there will be 2 lines.

In the first line, there are 2 integers n m, which indicate the number of players, the gold medal level respectively. Please remember n is always the multiple of 3.

In the second line, there are n integers which represents everyone’s ability.

It is guaranteed that——

T is about 100.

for 100% cases, 1 <= n <= 15, 1 <= m <= 30, 1 <= a[i] <= 20.

【Output】

As for each case, you need to output a single line.

There should be an integer in the line which means the gold medal teams Mr Z could match.

【Sample Input】

2

6 18

3 3 3 4 2 2

6 7

1 1 1 1 1 1

【Sample Output】

2
0

#include <iostream>
#include <algorithm>
#include <bits/stdc++.h>
using namespace std;int main(){int t;	//案例号cin>>t;while(t--){int n,m;	//选手人数,金牌级别	(n总是3的倍数) int a[20];cin>>n>>m;for(int i=1; i<=n; i++)	cin>>a[i];	//每个人的能力int sum=0;sort(a+1,a+n+1);start:	for(int i=1; i<=n; i++){if( a[i]==0 )	continue;//cout<<a[i]<<"**";for(int j=i+1; j<=n; j++){if( a[j]==0 )	continue;for(int k=j+1; k<=n; k++){if( a[k]==0 )	continue;if( a[i] + 2 * a[j] + 3 * a[k] >= m ){sum++;a[i]=0;a[j]=0;a[k]=0;	//标记的作goto start;/*这里真的不得不说一下,最开始的时候忽略了continue会直接下一个,而不是再次开始一个新的,这个忽略了真的折磨的我,,,一言难尽*/}}}}cout<<sum<<endl;}return 0;
}

其实这个的话我的思路最开始是想着一个最小搭一个最大的,然后发现好像不行,所以还是从小到达开始寻找吧

更多推荐

Team Match(纯暴力解决)

本文发布于:2024-03-23 14:43:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1739389.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:暴力   Team   Match

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!