第一行输入两个整数
。
第二行输入
个整数
。
第三行输入
个整数
。
输出一个整数,表示完成采购的最少花费。
5 5 2 1 2 1 2 1 2 1 2 3
5
直接选择网购
元即可完成。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
long x = in.nextLong(); // 网购总价用long
long minSum = 0; // 存储每种商品的最小单价总和
// 读取A供应商价格并立即与B供应商价格比较
int[] a = new int[n];
for (int i = 0; i < n; i++) {
a[i] = in.nextInt();
}
for (int i = 0; i < n; i++) {
int b = in.nextInt();
minSum += Math.min(a[i], b); // 累加每种商品的最低价格
}
// 比较两种方案的价格
System.out.println(Math.min(minSum, x));
}
}
#include <iostream>
#include <vector>
int main()
{
int n = 0,x = 0;
std::cin>>n>>x;
std::vector<int> goods_1(n),goods_2(n);
for(int i = 0;i<n;++i)
{
std::cin>>goods_1[i];
}
for(int i = 0;i<n;++i)
{
std::cin>>goods_2[i];
}
int ans = 0;
for(int i = 0;i<n;++i)
{
ans+=std::min(goods_1[i],goods_2[i]);
}
std::cout<<std::min(ans,x)<<'\n';
} import java.util.*;
import java.io.*;
// 每种货物都购买最便宜的
//题目有点小问题,预算不够时输出最小预算即可
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
String[] line1=bf.readLine().split(" ");
int n=Integer.parseInt(line1[0]);
int x=Integer.parseInt(line1[1]);
int[] as=Arrays.stream(bf.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();
int[] bs=Arrays.stream(bf.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();
int sum=0;//采购最小花费
for(int i=0;i<n;i++){
sum+=Math.min(as[i],bs[i]);
}
System.out.println(sum<x?sum:x);
}
} import java.util.Scanner;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
ArrayList<Integer> list1 = new ArrayList<>();
ArrayList<Integer> list2 = new ArrayList<>();
while (in.hasNextInt()) { // 注意 while 处理多个 case
int n = in.nextInt();
int x = in.nextInt();
for (int i = 0; i < n; i++) {
list1.add(in.nextInt());
}
for (int i = 0; i < n; i++) {
list2.add(in.nextInt());
}
int count = 0;
for (int i = 0; i < n; i++) {
int y = list1.get(i) < list2.get(i) ? list1.get(i) : list2.get(i);
count += y;
}
if (count > x) {
System.out.println(x);
} else
System.out.println(count);
}
}
}