Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
60432 | Ender | S2 | C++ | 内存超限 | 60 | 679 MS | 131196 KB | 608 | 2022-10-15 11:34:23 |
#include <iostream> #include <map> #include <cstdio> using namespace std; const int N = 100010; int a[N],m; map<long long,map<int,long long> >f; long long DFS(int x,long long ti) { //cout<<x<<' '<<ti<<' '<<f[x][ti]<<endl; if(f[x][ti]) return f[x][ti]; if(x == m + 1) return f[x][ti] = ti; return f[x][ti] = DFS(x + 1,(ti % a[x] == 0?ti:(ti / a[x] + 1) * a[x])); } int main() { //freopen("S2.in","r",stdin); //freopen("S2.out","w",stdout); int n,i; cin>>n>>m; for(i = 1;i <= m;i++) cin>>a[i]; for(i = 1;i <= n;i++) cout<<DFS(1,i)<<' '; cout<<endl; return 0; }