답안 #394960

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
394960 2021-04-27T14:26:33 Z Pichon5 Fancy Fence (CEOI20_fancyfence) C++17
0 / 100
1 ms 204 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;
    ll y;
    for(int i=0;i<n;i++){
        cin>>x;
        y=x;
        h.pb(x);
    }
    ll sum=0;
    for(int i=0;i<n;i++){
        cin>>x;
        sum+=x;sum%=MOD;
        w.pb(x);
    }
    ll res=T(1,sum);
    sum=0;
    for(int i=0;i<n;i++){
        if(h[i]==2){
            sum+=w[i];
        }else{
            res+=T(sum,2);res%=MOD;
            res-=T(sum,1);res%=MOD;
            sum=0;
        }
    }
    res+=T(sum,2);res%=MOD;
    res-=T(sum,1);res%=MOD;
    cout<<res<<endl;
    
    return 0;
}

Compilation message

fancyfence.cpp: In function 'int main()':
fancyfence.cpp:34:8: warning: variable 'y' set but not used [-Wunused-but-set-variable]
   34 |     ll y;
      |        ^
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct