제출 #254554

#제출 시각아이디문제언어결과실행 시간메모리
254554baboTents (JOI18_tents)C++14
100 / 100
145 ms71452 KiB
#include <bits/stdc++.h> #define L long long #define mod 1000000007ll using namespace std; L n,m; L dp[3030][3030]; int main() { scanf("%lld %lld",&n,&m); L i,j; for(i=0;i<=n;i++) dp[i][0]=1; for(j=0;j<=m;j++) dp[0][j]=1; for(i=1;i<=n;i++) { dp[i][1]=(1+4*i+i*(i-1)/2)%mod; for(j=2;j<=m;j++) { dp[i][j]+=dp[i][j-1]; if(i>=2) dp[i][j]+=dp[i-2][j-1]*(i*(i-1)/2%mod)%mod; dp[i][j]+=dp[i-1][j-1]*4*i%mod; dp[i][j]+=dp[i-1][j-2]*i%mod*(j-1)%mod; dp[i][j]%=mod; } } /*for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { printf("%lld ",dp[i][j]); } puts(""); }*/ printf("%lld",(dp[n][m]+mod-1)%mod); }

컴파일 시 표준 에러 (stderr) 메시지

tents.cpp: In function 'int main()':
tents.cpp:12:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld %lld",&n,&m);
  ~~~~~^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...