试题编号: | 202212-1 |
试题名称: | 现值计算 |
时间限制: | 1.0s |
内存限制: | 512.0MB |
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,in;
double i,sum=0;
cin>>n>>i;
for(int k=0;k<=n;k++){
cin>>in;
sum+=in*pow(i+1,-k);
}
cout<<sum;
return 0;
}
试题编号: | 202212-2 |
试题名称: | 训练计划 |
时间限制: | 1.0s |
内存限制: | 512.0MB |
计算机软件能力认证考试系统
一个科目可能被多个科目依赖,所以最早开始时间倒序
#include <bits/stdc++.h>
using namespace std;
int main(){
int n,m,p[100]={0},t[100]={0},b[100]={0},be[100]={0},flag=0;
cin>>n>>m;
for(int i=1;i<=m;i++) cin>>p[i];
for(int i=1;i<=m;i++) cin>>t[i];
for(int i=1;i<=m;i++){
be[i]=n-t[i];
if(p[i]!=0){
b[i]+=b[p[i]]+t[p[i]];
}
}
for(int i=m;i>=1;i--){
if(p[i]!=0){
if(be[p[i]]>be[i]-t[p[i]]) be[p[i]]=be[i]-t[p[i]];
}
if(be[i]<b[i]||be[i]<0) flag=1;
}
for(int i=1;i<m;i++){
cout<<b[i]+1<<" ";
}
cout<<b[m]+1<<endl;
if(!flag){
for(int i=1;i<m;i++){
cout<<be[i]+1<<" ";
}
cout<<be[m]+1;
}
return 0;
}