• Java实现 蓝桥杯VIP 算法训练 学做菜


    算法训练 学做菜
    时间限制:1.0s 内存限制:256.0MB

    问题描述
      涛涛立志要做新好青年,他最近在学做菜。由于技术还很生疏,他只会用鸡蛋,西红柿,鸡丁,辣酱这四种原料来做菜,我们给这四种原料标上字母A,B,C,D。
      涛涛现在会做的菜有五种:
      1、 西红柿炒鸡蛋 原料:AABDD
      2、 酸辣鸡丁 原料:ABCD
      3、 宫保鸡丁 原料:CCD
      4、 水煮西红柿 原料:BBB
      5、 怪味蛋 原料:AD
      这天早上,开开去早市给涛涛买了一些原料回来。由于事先没有什么计划,涛涛决定,对于现存的原料,每次尽量做菜单上靠前(即编号小)的菜。
      现在请你写一个程序,判断一下开开和涛涛中午能吃到哪些菜。
    输入格式
      共4个整数a,b,c,d。分别表示开开买的A,B,C,D这4种原料的数量。每种原料不会超过30份。
    输出格式
      输出5行。其中第i行表示涛涛做的第i种菜的数目。
    样例输入
    3
    1
    2
    4
    样例输出
    1
    0
    1
    0
    1

    import java.util.Scanner;
    
    
    public class 学做菜 {
    	public static void main(String[] args) {
    		Scanner sc=new Scanner(System.in);
    		int a=sc.nextInt();
    		int b=sc.nextInt();
    		int c=sc.nextInt();
    		int d=sc.nextInt();
    		int [] e= {0,0,0,0,0};
    		while(a>=2&&b>=1&&d>=2) {
    			if(a>=2&&b>=1&&d>=2) {
    			a-=2;
    			b-=1;
    			d-=2;
    			e[0]++;
    		}
    		}
    		while(a>=1&&b>=1&&c>=1&&d>=1) {
    		if(a>=1&&b>=1&&c>=1&&d>=1) {
    			a-=1;
    			b-=1;
    			c-=1;
    			d-=1;
    			e[1]++;
    		}
    		}
    	    while(c>=2&&d>=1) {
    		if(c>=2&&d>=1) {
    			c-=2;
    			d-=1;
    			e[2]++;
    		}
    	    }
    		while(b>=3) {
    			
    	    if(b>=3) {
    			b-=3;
    			e[3]++;
    		}
    		}
    		while(a>=1&&d>=1) {
    		if(a>=1&&d>=1) {
    			a-=1;
    			d-=1;
    			e[4]++;
    		}
    		}
    		
    		for(int i=0;i<e.length;i++) {
    			System.out.println(e[i]);
    		}
    	}
    
    
    }
    
    

    原文:https://blog.csdn.net/weixin_43557514/article/details/89306956

  • 相关阅读:
    JDBC的PreparedStatement是什么?
    ArrayList、LinkedList、Vector 的区别。
    final finally finalize区别
    面向对象三大特性
    JDBC访问数据库的基本步骤是什么?
    报表中的地图怎么做?
    报表工具如何实现“点击查看原图”
    玩转报表排名之组内排名
    动态隐藏行
    OUT 了??还没玩转报表超链接
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13078666.html
Copyright © 2020-2023  润新知