永发信息网

Vijos T1146五子棋

答案:1  悬赏:0  手机版
解决时间 2021-04-13 04:26
  • 提问者网友:玫瑰园
  • 2021-04-12 13:19
描述 Description
宿舍里好多好多有趣的事!
7890653今天看到不知何时流行的五子棋,在宿舍里拿个本子,画一些格子,一个棋盘就做好了!
当7890653把目光放到棋上,突发奇想,呵呵!一个题目就出来了!
在一个 5*5 的棋盘内,放上n颗棋子,其中(5<=n<=25);
这n颗棋子可以不同的放到任何一个地方---在棋盘内!于是呼,便会有五颗棋子排成一行,
或一列,或两条对角线,不同的放法,就会出现多少排五子的排列!
本题你要做的是,给你一个n,你找出不同放法出现的排列(设为k),如:
n=11;
有(1是棋子,0是空格)
1 1 1 0 0     1 1 1 1 1    
1 1 0 0 0     1 1 1 1 0
1 1 0 0 0     1 1 0 0 0
1 1 0 0 0     0 0 0 0 0
1 1 0 0 0 k=2; 0 0 0 0 0 k=1;
只有这两种k值,(注意k不重复),你要输出的便是k值的和。
也就是1+2=3!!!!!!
输入格式 Input Format
输入一个数n, 占一行!
其中(5<=n<=25);

输出格式 Output Format

输出一个k值的总和!(想也不用想k的范围是1<=k<=12的);

这题除了打表还有什么算法额

HELP!!!

这是打表的超降RP的程序...

#include<iostream>
using namespace std;
int main(){
int n;
int i;
int a[27]={0,0,0,0,0,1,1,1,1,3,3,3,6,6,10,10,15,21,21,28,28,35,30,30,27,12};
cin>>n
cout<<a[n];
return 0;
}

最佳答案
  • 五星知识达人网友:渡鹤影
  • 2021-04-12 13:59
你好。
很幸运看到你的问题。
但是又很遗憾到现在还没有人回答你的问题。也可能你现在已经在别的地方找到了答案,那就得恭喜你啦。
可能是你问的问题有些专业了,没人会。或者别人没有遇到或者接触过你的问题,所以帮不了你。建议你去问题的相关论坛去求助,那里的人通常比较多,也比较热心,可能能快点帮你解决问题。
希望我的回答也能够帮到你!
祝你好运~!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯