社区讨论
64球条qwq
P11214【MX-J8-T2】黑洞参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @m2h8ffho
- 此快照首次捕获于
- 2024/10/20 14:54 去年
- 此快照最后确认于
- 2025/11/04 16:43 4 个月前
CPP
#include<bits/stdc++.h>
#define endl '\n'
#define int long long
using namespace std;
template<typename T> void read(T&x){
int sign=1;x=0;char c;
do{
c=getchar();
if(c=='-') sign=-1;
}while(!isdigit(c));
do{
x=x*10+c-'0';
c=getchar();
}while(isdigit(c));
x*=sign;
}
const int N=2e5+10;
const int Mod=1e9+7;
int n;
int m[N],a[N];
struct op{
int jia,jian;
}b[N];
int Min=1e9,Minax=1e9;
map<int,int> t,tt;
int ans;
int s;
int MIN[N];
signed main(){
read(n);
for(int i=1;i<=n;i++){
read(m[i]);
}
for(int i=1;i<=n;i++){
read(a[i]);
}
if(n==2){
ans+=min(a[1]-1,a[2]-1);
ans%= Mod;
ans+=min(m[1]-a[1],m[2]-a[2]);
ans%=Mod;
ans+=min(m[1]-a[1],a[2]-1);
ans%=Mod;
ans+=min(a[1]-1,m[2]-a[2]);
ans%=Mod;
cout<<(ans+1+Mod)%Mod;
return 0;
}
if(n == 3){
ans+=min(m[1]-a[1],min(m[2]-a[2],m[3]-a[3]));
ans%=Mod;
ans+=min(m[1]-a[1],min(m[2]-a[2],a[3]-1));
ans%=Mod;
ans+=min(m[1]-a[1],min(a[2]-1,m[3]-a[3]));
ans%=Mod;
ans+=min(a[1]-1,min(m[2]-a[2],m[3]- a[3]));
ans%=Mod;
ans+=min(a[1]-1,min(a[2]-1,m[3]-a[3]));
ans%=Mod;
ans+=min(a[1]-1,min(m[2]-a[2],a[3]-1));
ans%=Mod;
ans+=min(m[1]-a[1],min(a[2]-1,a[3]-1));
ans%=Mod;
ans+=min(a[1]-1,min(a[2]-1,a[3]-1));
ans%=Mod;
cout<<(ans+1+Mod)%Mod;
return 0;
}
else{
for(int i=1;i<=n;i++){
b[i].jia=m[i]-a[i];
b[i].jian=a[i]-1;
}
for(int i=1;i<=n;i++){
Minax=min(max(b[i].jia,b[i].jian),Minax);
}
for(int i=1;i<=Minax;i++){
int qwq=1;
for(int j=1;j<=n;j++){
int qqq=0;
if(b[j].jia>=i){
qqq++;
}
if(b[j].jian>=i){
qqq++;
}
qwq*=qqq;
qwq%=Mod;
}
ans=(ans+qwq+Mod)%Mod;
if(qwq==0){
break;
}
}
ans=(ans+1+Mod)%Mod;
cout<<ans;
return 0;
}
}
/*
3
5 7 8
4 5 2
12
1 0 0 0
8 +-1 +-1 +-1
2 -2 +-2 +2
1 -3 -3 +3
*/
回复
共 1 条回复,欢迎继续交流。
正在加载回复...