1、 ⼩ 杨储蓄
问题描述
⼩ 杨共有 N个储蓄罐,编号从0到N-1。从第1天开始, ⼩杨每天都会往存钱罐里 存钱。具体来说,第i天他会挑选一个存钱罐 ɑ i ,并存 ⼊i元钱。过了D天后,他 已经忘记每个储蓄罐里都存了多少钱了,你能帮帮他吗?
输入描述
输 ⼊ 2 ⾏ ,第一行两个整数N,D;第二行D个整数,其中第i个整数为 ɑ i( 保证0≤ ɑ i≤ N-1)。
每 ⾏ 的各个整数之间 ⽤ 单个空格分隔。
保证1≤N≤1000 ;1≤D≤1000
输出描述
输出N个用单个空格隔开的整数,其中第i个整数表示编号为i-1的存钱罐中有多 少钱(i = 1,...,N)。
样例输入1
2 3
0 1 0
样例输出1
4 2
样例解释1
小杨在第1天、第2天、第3天分别向0号、1号、0号存钱罐存了1元钱、2元钱、 3 元钱,因此0号存钱罐有1+3=4元钱,而1号存钱罐有2元钱。
样例输入2
3 5
0 0 0 2 0
样例输出2
11 0 4
#include<bits/stdc++.h>
using namespace std;
int main(){
int n, m;
cin >> n >> m;
int a[1005];
for(int i = 0; i <m; i++){
cin >> a[i];
}
int s[1005];
for(int i = 0; i <n; i++){
s[i] = 0;
}
for(int i = 0; i < n ;i++){
for(int j = 0; j < m; j++){
if (a[j] == i){
s[i] += j+1;
}
}
}
for(int i = 0; i < n; i++){
cout << s[i] << " ";
}
return 0;
}