本文主要是介绍shopping,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package week01;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class shopping {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int k =0; k < t; k++)
{
int num = 0;
ArrayList<Integer> result = new ArrayList<>();
int m = sc.nextInt();
int n = sc.nextInt();
for(int i = 0; i < m; i ++)
{
int a = sc.nextInt();
result.add(a);
int b = sc.nextInt();
if(b == 1)num++;
}
// System.out.println(result);
// System.out.println(num);
Collections.sort(result);
// System.out.println(result);
double sum = 0;
double sum2 = 0;
if(n>=num)
{
sum = 0;
for(int i = 0; i < result.size(); i ++)
{
if(i < result.size() - num)
{
sum = sum + (double)result.get(i);
System.out.println(sum);
}
else
{
sum = sum + (double)result.get(i) / 2.0;
System.out.println(sum);
}
}
//System.out.println(result.size());
System.out.println(sum);
}
if(n < num)
{
sum2 = 0;
for(int j = 0; j < result.size(); j ++)
{
if(j < result.size() - n)
{
sum2 = sum2 + (double)result.get(j);
System.out.println(sum2);
}
else
{
sum2 = sum2 + (double)result.get(j) / 2.0;
System.out.println(sum2);
}
}
//System.out.println(result.size());
System.out.println(sum2);
}
result.clear();
}
}
}
这篇关于shopping的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!