func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 300010, mod = 998244353;   int a[N];   int n;   int fac[N], inv[N];   inline int add(int a, int b) { return a + b >= mod ? a + b - mod : a + b; }   inline int del(int a, int b) { return a < b ? a - b + mod : a - b; }   inline int mul(int a, int b) { return a * 1ll * b % mod; }   inline int qpow(int a, int b) {     int s = 1;     while (b) {       if (b & 1) s = mul(s, a);       a = mul(a, a);       b >>= 1;     }     return s;   }   int main() {     scanf( %d , &n);     int m = 2 * n;     fac[0] = fac[1] = 1;     for (int i = 2; i <= m; ++i) fac[i] = mul(fac[i - 1], i);     inv[m] = qpow(fac[m], mod - 2);     for (int i = m - 1; i >= 1; --i) inv[i] = mul(inv[i + 1], i + 1);     inv[0] = 1;     for (int i = 1; i <= m; ++i) scanf( %d , &a[i]);     sort(a + 1, a + 1 + m);     for (int i = 1; i <= m; ++i)       if (a[i] >= mod) a[i] %= mod;     int ans = 0;     for (int i = 1; i <= n; ++i) ans = del(ans, a[i]);     for (int i = n + 1; i <= m; ++i) ans = add(ans, a[i]);     printf( %d n , mul(ans, mul(fac[m], mul(inv[n], inv[n]))));     return 0;   }   