level 1
无相痞子
楼主
每一卦是一个6位的二进制,把64卦排成一列,使满足下面的条件:第1卦的后5位与第2卦的前5位相同;第2卦的后5位与第3卦的前5位相同;............第63卦的后5位与第64卦的前5位相同;第64卦的后5位与第1卦的前5位相同;找到所有满足这个条件的排列。#include
#include
#include
#include
#include
#include
#include
using namespace std;using boost::lexical_cast;bool jh(vector
,int,int,int);int mi(int i,int j){ if (j==0) return 1; else return i*mi(i,j-1); };//易卦串—类 class yiguachuan{ private: int _jinzhi,_wei,_chang; int _num_checked; int _howMany_will_check; int _howMany_checked; vector
> _vvi; ofstream outfile; public: yiguachuan(); bool xunzhao(); void out2File(); int jixufou(){ return _howMany_will_check; } };yiguachuan::yiguachuan(){ _howMany_checked=0; _howMany_will_check=1; cout<<"enter jinzhi and wei:"; cin>>_jinzhi>>_wei; string file_name= "jinzhi"+ lexical_cast
(_jinzhi)+ "wei"+ lexical_cast
(_wei)+ "说明"+ ".txt"; outfile.open(file_name.c_str(),ios_base::app); outfile<<"进制:"<<_jinzhi<<";"<<"位:"<<_wei<<";"<
vi; for(int i=0;i<_wei;++i){vi.push_back(0);} _vvi.push_back(vi); };bool yiguachuan::xunzhao(){ vector
vi=*_vvi.begin(); int chang=vi.size(); for(int i=chang-_wei+1;i<_chang;i++){ for(int i_jinzhi=_jinzhi-1;i_jinzhi>0;--i_jinzhi){ if(!jh(vi,i,_wei,i_jinzhi)) { vi.push_back(i_jinzhi); _vvi.insert(_vvi.begin()+1,vi); ++_howMany_will_check; vi.pop_back(); } } if(jh(vi,i,_wei,0)){_vvi.erase(_vvi.begin()); --_howMany_will_check;return false ;} else { vi.push_back(0);
2008年12月25日 13点12分
1
#include
#include
#include
#include
#include
#include
using namespace std;using boost::lexical_cast;bool jh(vector
,int,int,int);int mi(int i,int j){ if (j==0) return 1; else return i*mi(i,j-1); };//易卦串—类 class yiguachuan{ private: int _jinzhi,_wei,_chang; int _num_checked; int _howMany_will_check; int _howMany_checked; vector
> _vvi; ofstream outfile; public: yiguachuan(); bool xunzhao(); void out2File(); int jixufou(){ return _howMany_will_check; } };yiguachuan::yiguachuan(){ _howMany_checked=0; _howMany_will_check=1; cout<<"enter jinzhi and wei:"; cin>>_jinzhi>>_wei; string file_name= "jinzhi"+ lexical_cast
(_jinzhi)+ "wei"+ lexical_cast
(_wei)+ "说明"+ ".txt"; outfile.open(file_name.c_str(),ios_base::app); outfile<<"进制:"<<_jinzhi<<";"<<"位:"<<_wei<<";"<
vi; for(int i=0;i<_wei;++i){vi.push_back(0);} _vvi.push_back(vi); };bool yiguachuan::xunzhao(){ vector
vi=*_vvi.begin(); int chang=vi.size(); for(int i=chang-_wei+1;i<_chang;i++){ for(int i_jinzhi=_jinzhi-1;i_jinzhi>0;--i_jinzhi){ if(!jh(vi,i,_wei,i_jinzhi)) { vi.push_back(i_jinzhi); _vvi.insert(_vvi.begin()+1,vi); ++_howMany_will_check; vi.pop_back(); } } if(jh(vi,i,_wei,0)){_vvi.erase(_vvi.begin()); --_howMany_will_check;return false ;} else { vi.push_back(0);