当前位置:网站首页>Haut OJ 1241: League activities of class XXX
Haut OJ 1241: League activities of class XXX
2022-07-05 05:17:00 【hunziHang】
Problem description :
The once-a-month League event has come again , This activity is an outing , But? , The League branch secretary immediately poured cold water , It is said that our destination is on an island across the sea , You need to take a canoe to get to the island , A canoe can only take two people at most , And the total weight of passengers shall not exceed the maximum carrying capacity of the canoe . And the rental of canoes is very expensive , The class fee is limited .. We should try to reduce the cost of this activity , So find out the minimum number of canoes that can accommodate all students ,ykc I really want to go on this outing , Can you write a program to help him find out the minimum number of canoes to rent ?
Input :
First line input s, Number of groups representing test data ;
The first row of each set of data includes two integers w,n,80<=w<=200,1<=n<=300,w It is the maximum carrying capacity of a canoe ,n For the number of people ;
The next set of data is the weight of each person ( Not more than the carrying capacity of the ship );
Output :
The minimum number of canoes to rent per group
The sample input :
3 85 6 5 84 85 80 84 83 90 3 90 45 60 100 5 50 50 90 40 6
Sample output :
5 3 3
Cause analysis :
First, arrange the array from small to large , You can choose a largest and a smallest group of a boat , Notice the last if i=k, There is only one person left +1
Solution :
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[205];
int n,w,i,t,ans,k;
scanf("%d",&t);
while(t--)
{
ans=0;k=1;
scanf("%d%d",&w,&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
sort(a+1,a+n+1);
for(i=n;i>=k;i--)
{
if(a[i]>=w)
ans++;
else
{
while(a[i]+a[k]<=w && i>k)
{
ans++;
k++;
i--;
}
if(a[i]+a[k]>w && i>k)
ans++;
if(i==k)
ans++;
}
}
printf("%d\n",ans);
}
}
边栏推荐
- PMP考生,请查收7月PMP考试注意事项
- cocos_ Lua listview loads too much data
- Database under unity
- C iterator
- Basic knowledge points of dictionary
- [binary search] 34 Find the first and last positions of elements in a sorted array
- Unity and database
- The next key of win generates the timestamp file of the current day
- [turn to] MySQL operation practice (III): table connection
- 嵌入式数据库开发编程(五)——DQL
猜你喜欢
Collapse of adjacent vertical outer margins
Optimization scheme of win10 virtual machine cluster
Ue4/ue5 illusory engine, material chapter, texture, compression and memory compression and memory
win10虚拟机集群优化方案
质量体系建设之路的分分合合
Do a small pressure test with JMeter tool
To the distance we have been looking for -- film review of "flying house journey"
[转]MySQL操作实战(三):表联结
Stm32cubemx (8): RTC and RTC wake-up interrupt
Generate filled text and pictures
随机推荐
嵌入式数据库开发编程(六)——C API
[interval problem] 435 Non overlapping interval
cocos_ Lua listview loads too much data
Bubble sort summary
Unity enables mobile phone vibration
[turn]: Apache Felix framework configuration properties
When will Wei Lai, who has been watched by public opinion, start to "build high-rise buildings" again?
Unity sends messages and blocks indecent words
What is the agile proportion of PMP Exam? Dispel doubts
Applet Live + e - commerce, si vous voulez être un nouveau e - commerce de détail, utilisez - le!
Reverse one-way linked list of interview questions
[turn]: OSGi specification in simple terms
[sum of two numbers] 169 sum of two numbers II - enter an ordered array
Basic knowledge points of dictionary
使用Room数据库报警告: Schema export directory is not provided to the annotation processor so we cannot expor
Django reports an error when connecting to the database. What is the reason
PR first time
Unity ugui source code graphic
[to be continued] I believe that everyone has the right to choose their own way of life - written in front of the art column
Bucket sort