1 条题解
-
0
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
- 上传者