Cheerleaders UVA


#include <iostream> #include <cstdio> #include <sstream> #include <cstring> #include <map> #include <set> #include <vector> #include <stack> #include <queue> #include <algorithm> #include <cmath> #define MOD 1000007 #define LL long long #define ULL unsigned long long #define Pair pair<int, int> #define mem(a, b) memset(a, b, sizeof(a)) #define _ ios_base::sync_with_stdio(0),cin.tie(0) //freopen("1.txt", "r", stdin); using namespace std; const int maxn = 10010, INF = 0x7fffffff; int C[510][510]; int main() { mem(C, 0); C[0][0] = 1; for(int i=0; i<=500; i++) { C[i][0] = C[i][i] = 1; for(int j=1; j<i; j++) C[i][j] = ( C[i-1][j-1] + C[i-1][j] ) % MOD; } int T, kase = 0; int n, m, k; cin>> T; while(T--) { cin>> n >> m >> k; int sum = 0; for(int i=0; i< 16; i++) { int r = n,c = m, b = 0; if(i & 1) r--, b++; if(i & 2) r--, b++; if(i & 4) c--, b++; if(i & 8) c--, b++; if(b & 1) sum = (sum + MOD - C[r*c][k]) % MOD; else sum = (sum + C[r*c][k]) % MOD; } printf("Case %d: %d ",++kase, sum); } return 0; }
自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。
原文地址:https://www.cnblogs.com/WTSRUVF/p/9322835.html