栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 1168 The Circle

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 1168 The Circle

#include <iostream>#include <string.h>#include <algorithm>#include <string.h>#include <list>#include <vector>using namespace std;int n,m,k;int nowans[10];int s[10];bool used[100];int resnum=-1;list<string> res;int findnext(){    for(int i=m;i<=m+n*(n-1)+1;i++)      if(!used[i])        return i;    return -1;}int findmin(int pos){    for(int i=0;i<n;i++)      if(s[i]==pos)        return i;    return -1;}void search1(int pos,int last){    if(pos==-1)    {       int maxnum=findnext()-1;       if(maxnum>=resnum)       {          char tmp[10];          for(int i=0;i<n;i++) tmp[i]=nowans[i];          tmp[n]='';          if(maxnum>resnum)          {  resnum=maxnum;  res.clear();          }          res.push_back(string(tmp));       }    }    else    {       int nextneed=findnext();         for(int i=last;i<=m+n*(n-1)+1;i++)       {          if(i>nextneed) break;          vector<int> tmp;          nowans[pos]=i;          for(int j=0;j<n;j++) for(int step=0;step<n;step++) {   int total=0;   for(int l=j;l<=j+step;l++)   {        if(nowans[l%n]==-1){  total=-1;  break;          }        else total+=nowans[l%n];      }   if(total==-1) break;   else   {       if(!used[total])       {          used[total]=1;          tmp.push_back(total);       }   } }search1(findmin(s[pos]+1),i);      for(int i=0;i<tmp.size();i++)   used[tmp[i]]=0;       }       nowans[pos]=-1;    }}int main(){    memset(used,0,sizeof(used));    cin>>n>>m>>k;    for(int i=0;i<n;i++)      s[i]=i,nowans[i]=-1;      do    {  search1(findmin(0),k);    }while(next_permutation(s+1,s+n));    res.sort();    res.unique();    cout<<resnum<<endl;   for(list<string>::iterator it=res.begin(); it!=res.end();it++)    {      for(int j=0;j<(it->length());j++)        cout<<(int)(it->at(j))<<" ";      cout<<endl;    }    return 0; }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/369064.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号