func_code_string: #include <bits/stdc++.h>   using namespace std;   long long dp[5010][5010]={};   long long cnt[5010]={};   long long a[5000];   long long mod=1e9+7;   signed main()   {       int n,k,q;       cin>>n>>k>>q;       for(int i=0;i<n;i++){           cin>>a[i];       }       for(int i=0;i<n;i++)dp[i][0]=1;       for(int j=1;j<=k;j++){           dp[0][j]=dp[1][j-1];           for(int i=1;i<n-1;i++){               dp[i][j]=dp[i-1][j-1]+dp[i+1][j-1];               dp[i][j]%=mod;           }           dp[n-1][j]=dp[n-2][j-1];       }       long long b;       long long sum=0;       for(int i=0;i<n;i++){           for(int j=0;j<=k;j++){               b=dp[i][j]*dp[i][k-j];               b%=mod;               cnt[i]+=b;               cnt[i]%=mod;           }           sum+=(cnt[i]*a[i])%mod;           sum%=mod;       }       for(int i=0;i<q;i++){           long long x,y;           cin>>x>>y;           long long f=cnt[x-1]*(y),g=cnt[x-1]*a[x-1];           sum+=mod+(f%mod+mod)%mod-(g%mod+mod)%mod;           sum%=mod;           a[x-1]=y;           cout<<sum<<  n ;       }      }