【杭电】[1220]Cube

这里写图片描述
这里写图片描述

可知
与角块重合点小于4的有除了周围的三块和它自身
与棱上的块小于4的有除了周围的四块和它自身
与面上的块小于4的有除了周围的五块和它自身
其余的小于4的有除了周围的六块和它自身

然后相加后把结果除2(一对算了两次)
可得结果

#include<stdio.h>
#include<algorithm>
using namespace std;
int main() {
    int n;
    while(scanf("%d",&n)!=EOF) {
        int res=0;
        int l=n*n*n;
        res+=8*(l-4);
        res+=(n-2)*12*(l-5);
        res+=((n-2)*(n-2)*6)*(l-6);
        res+=(l-8-(n-2)*12-(n-2)*(n-2)*6)*(l-7);
        printf("%d\n",res/2);
    }
    return 0;
}

题目地址:【杭电】[1220]Cube

posted @ 2016-04-14 07:18  BoilTask  阅读(8)  评论(0编辑  收藏  举报