JAVA-蓝桥杯算法训练-找零钱

问题描述
 有n个人正在饭堂排队买海北鸡饭。每份海北鸡饭要25元。奇怪的是,
 每个人手里只有一张钞票(每张钞票的面值为2550100元),
 而且饭堂阿姨一开始没有任何零钱。请问饭堂阿姨能否给所有人找零(
 假设饭堂阿姨足够聪明)
import java.util.Scanner;


public class 找零钱 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc=new Scanner(System.in);
		   int num = sc.nextInt();
	       int a1[]=new int[num]; //定义一个数组,长度由用户输入
	       for(int i = 0;i<num;i++){
	    	   a1[i]=sc.nextInt();
	       }
	       String str="YES";//定义一个变量默认值
	       int c=0; int d=0;int e= 0;
	       for(int x = 0;x<num;x++){
	    	   if(a1[0]!=25){
	    		   str="NO";  //遍历数组,如果数组中不存在25的这个数字那么直接No因为找零钱必须要有25元的
	    	   }
	    	   if(a1[x]==100){	//遍历数组,看100元的出现多少次	  
	    		   c++;
	    	   }
	    	   if(a1[x]==50){	//遍历数组,看50元的出现多少次	   
	    		  d++;
	    	   }
	    	   if(a1[x]==25){//遍历数组,看25元的出现多少次	  
	     		  e++;
	     	   }
	       }
	       //找出他们之间的关系,25元、50元、100元分别存在以下关系,进行判断输出即可
	       if(e!=0&&d!=0&&c==0){
	    	   if(d<=e) str="YES";
	    	   else str="NO";
	       }
	       if(e!=0&&c!=0&&d==0){
	    	   if(e>=3*c) str="YES";
	    	   else str="NO";
	    	   }
	       if(e!=0&&c!=0&&d!=0){
	    	   if(d<=e&&e+d>=c*3) str="YES";
	    	   else str="NO";
	       }
	       System.out.println(str);
	}

}

执行结果如下:
3
25 50 50
NO
发布了39 篇原创文章 · 获赞 6 · 访问量 958
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览