A.Two Rectangles
题意:求大矩形面基,zz题
思路:不解释
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <cmath>
#include <map>
#include <set>
#define mm(i,v) memset(i,v,sizeof i);
using namespace std;
typedef long long ll;
int a,b,c,d;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>a>>b>>c>>d;
cout<<max(a*b,c*d);
return 0;
}
B.Increment Decrement
题意:初始值为0,I-1,D+1。
思路:不解释
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <cmath>
#include <map>
#include <set>
#define mm(i,v) memset(i,v,sizeof i);
using namespace std;
typedef long long ll;
int n;
char s[110];
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
cin>>s;
int cnt=0,maxx=0;
for(int i=0;i<n;i++)
{
if(s[i]=='I') cnt++;
else cnt--;
maxx=max(maxx,cnt);
}
printf("%d\n",maxx);
return 0;
}
C.Factors of Factorial
思路:阶乘拆成质因子乘积,根据每种质因子可以取的数量,由乘法原理得到答案
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <string>
#include <algorithm>
#include <vector>
#include <map>
using namespace std;
const int N = 1e5+10;
typedef long long LL;
const LL mod = 1e9+7;
int a[N];
int main() {
int n;
while(scanf("%d", &n)!=EOF) {
for(int i=2; i<=n; i++) {
int x=i;
for(int j=2; j<=x; j++) {
while(x%j==0) {
a[j]++;
x/=j;
}
}
if(x!=1) a[x]++;
}
LL ans=1;
for(int i=1; i<=n; i++) {
if(a[i]!=0) ans=(ans*(a[i]+1))%mod;
}
printf("%lld\n",ans);
}
return 0;
}
D.Walk and Teleport
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <cmath>
#include <map>
#include <set>
#define mm(i,v) memset(i,v,sizeof i);
using namespace std;
typedef long long ll;
ll N,A,B;
ll x,now,pre;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>N>>A>>B;
cin>>pre;
ll ans=0;
for(int i=2;i<=N;i++){
cin>>x;
now=(x-pre)*A;
ans+=min(now,B);
pre=x;
}
cout<<ans<<"\n";
return 0;
}