답안 #577533

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
577533 2022-06-15T04:02:12 Z temporary_juggernaut Fancy Fence (CEOI20_fancyfence) C++14
13 / 100
18 ms 1856 KB
#include<bits/stdc++.h>
#define fr first
#define sc second
using namespace std;
typedef long long ll;
typedef long double ld;
#define USING_ORDERED_SET 0
#if USING_ORDERED_SET
#include<bits/extc++.h>
using namespace __gnu_pbds;
template<class T>using ordered_set=tree<T,null_type,less<T>,rb_tree_tag,tree_order_statistics_node_update>;
#endif
template<class T>void umax(T &a,T b){if(a<b)a=b;}
template<class T>void umin(T &a,T b){if(b<a)a=b;}
#ifdef juggernaut
    #define printl(args...) printf(args)
#else
    #define printl(args...) 0
#endif
int h[100005];
int w[100005];
ll pref[100005];
int n;
ll mod=1e9+7;
const ll cn=(mod+1)/2;
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++)scanf("%d",&h[i]);
	for(int i=1;i<=n;i++){
		scanf("%d",&w[i]);
		pref[i]=pref[i-1];
		pref[i]+=w[i];
	}
	ll ans=pref[n]%mod*((pref[n]+1)%mod)%mod*cn%mod;
	n++;
	pref[n]=pref[n-1];
	h[n]=1;
	ll carry=0;
	for(int i=1;i<=n;i++){
		if(h[i]==2)carry+=w[i];
		else{
			if(!carry)continue;
			ans+=carry%mod*((carry+1)%mod);
			ans%=mod;
			carry=0;
		}
	}
	cout<<ans;
}
	 

Compilation message

fancyfence.cpp: In function 'int main()':
fancyfence.cpp:27:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |  scanf("%d",&n);
      |  ~~~~~^~~~~~~~~
fancyfence.cpp:28:28: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   28 |  for(int i=1;i<=n;i++)scanf("%d",&h[i]);
      |                       ~~~~~^~~~~~~~~~~~
fancyfence.cpp:30:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   30 |   scanf("%d",&w[i]);
      |   ~~~~~^~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 11 ms 1040 KB Output is correct
4 Correct 18 ms 1748 KB Output is correct
5 Correct 17 ms 1744 KB Output is correct
6 Correct 17 ms 1856 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -