萌新外站题0pts求条
  • 板块学术版
  • 楼主lihaoda
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/9/25 17:05
  • 上次更新2024/9/25 20:09:01
查看原帖
萌新外站题0pts求条
1024914
lihaoda楼主2024/9/25 17:05
连乘问题
题目描述
给定 n 个正整数 a[1],a[2],...,a[n],请计算一组乘积,记为 A[i]; 

这个A[i]就是 a[1]到 a[n]的连乘(除去 a[i]).

由于答案可能比较大,输出每个 A[i] 模 10000 的余数。

输入格式
第一行:一个正整数 n 。
第二行:n 个正整数 a[1],a[2],...,a[n]。 

输出格式
输出共 n 行:第 i 行输出 A[i] 。

样例 #1
样例输入 #1
4
1 3 4 6

样例输出 #1
72
24
18
12

提示
对于 
100% 的数据,
2≤n≤10 ^5, 1≤a[i]≤10000 。

代码:

#include<bits/stdc++.h>
#define int unsigned long long 
#define uper 100007

using namespace std;

int a[uper],sum[uper];
int n;

signed main(){
	cin >> n;
	sum[0] = 1;
	for(int i=1;i<=n;++i){
		cin >> a[i];
		
		sum[i] = sum[i-1]*a[i]%10000;
	}
	for(int i=1;i<=n;++i){
		cout << sum[n]/a[i] << endl;
	}
}
2024/9/25 17:05
加载中...