Submission #394948

# Submission time Handle Problem Language Result Execution time Memory
394948 2021-04-27T14:17:01 Z Pichon5 Fancy Fence (CEOI20_fancyfence) C++17
12 / 100
1000 ms 1988 KB
#include<bits/stdc++.h>
#define lcm(a,b) (a/__gcd(a,b))*b
#define fast ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define ll long long int
#define vi vector<int>
#define vll vector<ll>
#define pb push_back
#define F first
#define S second
#define mp make_pair
//salida rapida "\n"
//DECIMALES fixed<<sp(n)<<x<<endl;
//gcd(a,b)= ax + by
//lCB x&-x
//set.erase(it) - ersases the element present at the required index//auto it = s.find(element)
//set.find(element) - iterator pointing to the given element if it is present else return pointer pointing to set.end()
//set.lower_bound(element) - iterator pointing to element greater than or equal to the given element
//set.upper_bound(element) - iterator pointing to element greater than the given element
// | ^
//__builtin_popcount(x)
using namespace std;
const ll MOD=1e9+7;
vll h,w;
ll bin(ll x){
    return ((x*(x+1))/2)%MOD;
}
ll T(ll x,ll y){
    return (bin(x)%MOD*bin(y)%MOD)%MOD;
}
int main()
{ 
    int n,x;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>x;
        h.pb(x);
    }
    for(int i=0;i<n;i++){
        cin>>x;
        w.pb(x);
    }
    ll res=0;
    for(int i=0;i<n;i++){
        ll Hmin=h[i];
        res+=T(h[i],w[i]);
        res%=MOD;
        for(int l=i+1;l<n;l++){
            Hmin=min(Hmin,h[l]);
            res+=T(Hmin,w[i]+w[l]);res%=MOD;
            res-=T(Hmin,w[i]);
            res-=T(Hmin,w[l]);
        }
    }
    cout<<res<<endl;

    
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 11 ms 332 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 296 KB Output is correct
3 Correct 1 ms 208 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 1 ms 296 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 9 ms 304 KB Output is correct
3 Execution timed out 1087 ms 1988 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 10 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 292 KB Output is correct
2 Incorrect 10 ms 336 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 296 KB Output is correct
2 Incorrect 12 ms 284 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 11 ms 332 KB Output isn't correct