Submission #2210551


Source Code Expand

#include <bits/stdc++.h>

#define rep(i,n) for(long long int (i)=0;(i)<(int)(n);(i)++)
#define rrep(i,a,b) for(long long int i=(a);i<(b);i++)
#define rrrep(i,a,b) for(long long int i=(a);i>=(b);i--)
#define all(v) (v).begin(), (v).end()
#define pb(q) push_back(q)
#define P pair<int,int>
#define Abs(a,b) max(a,b)-min(a,b)
#define YES(condition) if(condition){cout << "YES" << endl;}else{cout << "NO" << endl;}
#define Yes(condition) if(condition){cout << "Yes" << endl;}else{cout << "No" << endl;}
#define Cout(x) cout<<(x)<<endl
#define POSSIBLE(n) cout << ((n) ? "POSSIBLE" : "IMPOSSIBLE"  ) << endl
#define Possible(n) cout << ((n) ? "Possible" : "Impossible"  ) << endl
#define possible(n) cout << ((n) ? "possible" : "impossible"  ) << endl
#define Size(n) (n).size()

typedef long long ll;

using namespace std;

const int INF = 1e9,MOD = 1e9 + 7;
const ll LINF = 1e18;

//long long int kaizyo(long long int hh){
  //  cmp=1;
    //while(hh>1){
      //  cmp=(cmp*hh)%MOD;
        //hh--;
    //}
    //return cmp;
//}
//long long int ruizyo(long long int aa, long long int bb){
  //  if(aa==0){
    //    return 1;
    //}
    //else if(aa%2==0){
      //  long long int tt=ruizyo(aa/2,bb);
        //return (tt*tt)%MOD;
    //}
    //else{
      //  return (ruizyo(aa-1,bb)*bb)%MOD;
    //}
//}フェルマ-のア


//while(x!=0){
            //sum+=x%10;
           // x/=10;
        //}
        //各桁の和

//pair<int,int> p[100000];
//P r[100000];
//cin >> tmp;
//p[i]=make_pair(tmp,i);
//cout << p[i].second+1 << endl;//ペアの右側つまりiを出力

//s.find(w[i])==string::npos
//findの使い方

//for(int i=0;i<n;i++){
   // b[i]=x%2;
    //x/=2;
  //}二進数

//visited=vector<vector<bool>>(10,vector<bool>(10,false));アを全部falseに


long long int n,cnt=0,ans=0,a,b,c,d,cmp=0,cmpp=0,m,h,w,x[10000000],y[10000000],sum=0,pos;
int dy[]={1,0,-1,0};
int dx[]={0,1,0,-1};
string alph("abcdefghijklmnopqrstuvwxyz"),s;
bool fl=true;

int main(void){
       cin.tie(0);
    ios::sync_with_stdio(false);

       cin >> n >> m;
       rrep(i,1,n+1)cin>>x[i];
       rrep(j,1,m+1)cin>>y[j];
      rrep(k,1,n+1){
          cmp+=(k-1)*x[k]-(n-k)*x[k];
          cmp%=MOD;
      }
      rrep(k,1,m+1){
          cmpp+=(k-1)*y[k]-(m-k)*y[k];
          cmpp%=MOD;
      }
      Cout(cmp*cmpp%MOD);
       
return 0;
}

Submission Info

Submission Time
Task D - ###
User asdf1
Language C++14 (GCC 5.4.1)
Score 500
Code Size 2434 Byte
Status AC
Exec Time 22 ms
Memory 3072 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 2
AC × 17
Set Name Test Cases
Sample 0_000.txt, 0_001.txt
All 0_000.txt, 0_001.txt, max.txt, min.txt, mod.txt, n2.txt, rndA.txt, rndB.txt, rndC.txt, rndD.txt, rndE.txt, rndF.txt, rndG.txt, rndH.txt, rndI.txt, rndJ.txt, var.txt
Case Name Status Exec Time Memory
0_000.txt AC 2 ms 2304 KB
0_001.txt AC 2 ms 2304 KB
max.txt AC 22 ms 3072 KB
min.txt AC 2 ms 2304 KB
mod.txt AC 12 ms 3072 KB
n2.txt AC 12 ms 2304 KB
rndA.txt AC 22 ms 3072 KB
rndB.txt AC 22 ms 3072 KB
rndC.txt AC 22 ms 3072 KB
rndD.txt AC 22 ms 3072 KB
rndE.txt AC 22 ms 3072 KB
rndF.txt AC 22 ms 3072 KB
rndG.txt AC 22 ms 3072 KB
rndH.txt AC 22 ms 3072 KB
rndI.txt AC 22 ms 3072 KB
rndJ.txt AC 22 ms 3072 KB
var.txt AC 22 ms 3072 KB