1 条题解

  • 0
    @ 2025-4-14 18:41:38

    C :

    #include<stdio.h>
    int main()
    {int a;scanf("%d",&a);
    while(a--){
    int s,b,p=0;scanf("%d",&b);
    while(b--){
    int c,d,e,f,g,h,i;
    scanf("%d",&c);{
    d=c/100;e=c%100/50;
    f=c%50/20;g=c%50%20/10;
    h=c%10/5;i=c%5;
    s=d+e+f+g+h+i;p=p+s;}
    }printf("%d\n",p);
    }
    }
    

    C++ :

    #include <iostream>
    #include <algorithm>
    #include <cmath>
    #include <fstream>
    using namespace std;
    
    int getnumofmoney(int n)
    {
        int r=0;
        while(n!=0)
        {
            if(n>=100)
            {
                n-=100;
                r++;
                continue;
            }
            if(n>=50)
            {
                n-=50;
                r++;
                continue;
            }
            if(n>=20)
            {
                n-=20;
                r++;
                continue;
            }
            if(n>=10)
            {
                n-=10;
                r++;
                continue;
            }
            if(n>=5)
            {
                n-=5;
                r++;
                continue;
            }
            if(n>=1)
            {
                n-=1;
                r++;
                continue;
            }
    
        }
        return r;
    }
    
    
    int main()
    {
    
        //ifstream cin;
        //ofstream cout;
        //cin.open("b.in");
        //cout.open("b.out");
    
        int tc,testcase;
        cin>>tc;
    
        while(tc--)
        {
            cin>>testcase;
            int p[105];
        for(int i=0;i<testcase;i++)
                cin>>p[i];
        int total=0;
        for(int i=0;i<testcase;i++)
        {
            total+=getnumofmoney(p[i]);
        }
        cout<<total<<endl;
        }
        return 0;
    }
    
    

    Java :

    import java.util.Scanner;
    class Main {
    
    	private static final int[] m = { 100, 50, 20, 10, 5, 1 };
    
    	public static void main(String[] args) {
    		Scanner reader = new Scanner(System.in);
    		int T = reader.nextInt();
    		for (int i = 0; i < T; i++) {
    			int sum = 0;
    			int first = reader.nextInt();
    			for (int j = 0; j < first; j++) {
    				int money = reader.nextInt();
    				sum = sum + giveChange(money);
    			}
    			System.out.println(sum);
    		}
    
    	}
    	public static int giveChange(int n) {
    		int num = 0;
    		for (int i = 0; i < m.length; i++) {
    			num += n / m[i];
    			n = n % m[i];
    		}
    		return num;
    	}
    }
    
    
    • 1

    信息

    ID
    3161
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者