Commit ca1e3418 by songxinkai

20190110, modify go_data_write_example 2

parent 89b3b291
...@@ -14,13 +14,13 @@ using namespace std; ...@@ -14,13 +14,13 @@ using namespace std;
void read(const string file, vector<vector<float> >& feas, void read(const string file, vector<vector<float> >& feas,
vector<vector<float> >& pis, vector<float>& vs){ vector<vector<float> >& pis, vector<float>& vs){
int steps_in = 0; int steps_in = 0;
float winner_in = 0.0; int winner_in = 0;
char feas_in[1000 * 17*19*19]; char feas_in[1000 * 17*19*19];
float pis_in[1000 * 362]; float pis_in[1000 * 362];
std::ifstream input(file, ios::in | ios::binary); std::ifstream input(file, ios::in | ios::binary);
input.read((char*)&steps_in, sizeof(int)); input.read((char*)&steps_in, sizeof(int));
// CHECK_LE(steps_in, 1000); // CHECK_LE(steps_in, 1000);
input.read((char*)&winner_in, sizeof(float)); input.read((char*)&winner_in, sizeof(int));
input.read((char*)feas_in, sizeof(char) * 19*19*17 * steps_in); input.read((char*)feas_in, sizeof(char) * 19*19*17 * steps_in);
input.read((char*)pis_in, sizeof(float) * (19*19+1) * steps_in); input.read((char*)pis_in, sizeof(float) * (19*19+1) * steps_in);
input.close(); input.close();
...@@ -36,7 +36,7 @@ void read(const string file, vector<vector<float> >& feas, ...@@ -36,7 +36,7 @@ void read(const string file, vector<vector<float> >& feas,
for (int j = 0; j < 1+19*19; ++j){ for (int j = 0; j < 1+19*19; ++j){
pis[step][j] = pis_in[step*(1+19*19)+j]; pis[step][j] = pis_in[step*(1+19*19)+j];
} }
if ((step%2==0)^(winner_in==1.0)){ // self lose if ((step%2==0)^(winner_in==1)){ // self lose
vs[step] = -1.0; vs[step] = -1.0;
}else{ }else{
vs[step] = 1.0; vs[step] = 1.0;
...@@ -84,28 +84,28 @@ int main (){ ...@@ -84,28 +84,28 @@ int main (){
for (int i = 0; i < 1000; ++i){ for (int i = 0; i < 1000; ++i){
ss.str(""); ss.str("");
ss << "go/" << i << ".bin"; ss << "go/" << i << ".bin";
write(ss.str()); // write(ss.str());
// vector<vector<float> > feas; vector<vector<float> > feas;
// vector<vector<float> > pis; vector<vector<float> > pis;
// vector<float> vs; vector<float> vs;
// read(ss.str(), feas, pis, vs); read(ss.str(), feas, pis, vs);
// cout << feas.size() << ", " << pis.size() << ", " << vs.size() << ", " << endl; cout << feas.size() << ", " << pis.size() << ", " << vs.size() << ", " << endl;
// for (int i = 0; i < feas.size(); ++i){ for (int i = 0; i < feas.size(); ++i){
// cout << "========" << i << "======" << endl; cout << "========" << i << "======" << endl;
// for (int j = 0; j < 19*19; ++j){ for (int j = 0; j < 19*19; ++j){
// cout << j << ": "; cout << j << ": ";
// for (int c = 0; c < 17; ++c){ for (int c = 0; c < 17; ++c){
// cout << feas[i][j*17+c] << ", "; cout << feas[i][j*17+c] << ", ";
// } }
// cout << endl; cout << endl;
// } }
// for (int j = 0; j < pis[i].size(); ++j){ for (int j = 0; j < pis[i].size(); ++j){
// if (pis[i][j] != 0){ if (pis[i][j] != 0){
// cout << "(" << j << "-" << pis[i][j] << "), "; cout << "(" << j << "-" << pis[i][j] << "), ";
// } }
// } }
// cout << endl << vs[i] << endl; cout << endl << vs[i] << endl;
// } }
} }
return 0; return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment