A
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/************************************************************************* > File Name: A.cpp > Author: opas_chenxin > Mail: 1017370773@qq.com > Created Time: 2016年05月06日 星期五 02时22分23秒 *************************************************************************/ #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #include<cmath> using namespace std; int main(int argc, char *argv[]) { int n,m,a; while(scanf("%d%d%d",&n,&m,&a) == 3) { int d1 = (n+a-1)/a; int d2 = (m+a-1)/a; cout<<1LL*d1*d2<<endl; } return 0; }
B
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/************************************************************************* > File Name: B.cpp > Author: opas_chenxin > Mail: 1017370773@qq.com > Created Time: 2016年05月06日 星期五 20时28分30秒 *************************************************************************/ #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #include<cmath> using namespace std; const int maxn = 5000000; char A[maxn]; char B[maxn]; void solve1(int len) { int a1 = 0; int loc = 0; while(loc<len) { if(A[loc] >= 'A' && A[loc] <= 'Z') { a1 = a1 * 26 + A[loc] - 'A' + 1; }else { break; } loc++; } int b1 = 0; while(loc<len) { b1 = b1*10 + A[loc] -'0'; loc++; } printf("R%dC%d ",b1,a1); } void solve2(int len) { int b1 = 0; int loc=1; while(loc < len) { if(A[loc] == 'C') break; b1=b1*10+A[loc]-'0'; loc++; } loc++; int a1 = 0; while(loc < len) { a1 = a1 * 10 + A[loc] - '0'; loc++; } loc = 0; while(a1>0) { int v = a1%26; char c='Z'; if(v != 0) c = 'A'+ v - 1; a1 -= c - 'A' + 1; a1 /= 26; B[loc ++] = c; } B[loc]='