#include <vector>
#include <bitset>
#include <iterator>
#include <fstream>
#include <sstream>
#include <iostream>
const int N= 6 ;
std:: vector < std:: bitset < N> > read_graph( const std:: string & filepath)
{
std:: vector < std:: bitset < N> > bs( N) ;
std:: ifstream fp( filepath.c_str ( ) ) ;
for ( std:: string line; getline( std:: cin , line) ; ) // using std::cin for this demo
{
if ( line.size ( ) > 1 && line[ 0 ] == 'a' )
{
std:: istringstream str( line.substr ( 1 ) ) ;
int fi, si;
str >> fi >> si;
std:: cout << "fi: " << fi << " si: " << si << '\n ' ;
bs[ -- fi] [ -- si] = 1 ;
}
}
return bs;
}
int main( )
{
std:: vector < std:: bitset < N> > v = read_graph( "sample.gr" ) ;
copy( v.rbegin ( ) , v.rend ( ) , std:: ostream_iterator < std:: bitset < N> > ( std:: cout , "\n " ) ) ;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGJpdHNldD4KI2luY2x1ZGUgPGl0ZXJhdG9yPgojaW5jbHVkZSA8ZnN0cmVhbT4KI2luY2x1ZGUgPHNzdHJlYW0+CiNpbmNsdWRlIDxpb3N0cmVhbT4KY29uc3QgaW50IE49NjsKc3RkOjp2ZWN0b3I8c3RkOjpiaXRzZXQ8Tj4gPiByZWFkX2dyYXBoKGNvbnN0IHN0ZDo6c3RyaW5nJiBmaWxlcGF0aCkKewogICAgc3RkOjp2ZWN0b3I8c3RkOjpiaXRzZXQ8Tj4gPiBicyhOKTsKICAgIHN0ZDo6aWZzdHJlYW0gZnAoZmlsZXBhdGguY19zdHIoKSk7CiAgICBmb3Ioc3RkOjpzdHJpbmcgbGluZTsgZ2V0bGluZShzdGQ6OmNpbiwgbGluZSk7ICkgLy8gdXNpbmcgc3RkOjpjaW4gZm9yIHRoaXMgZGVtbwogICAgewogICAgICAgIGlmKGxpbmUuc2l6ZSgpID4gMSAmJiBsaW5lWzBdID09ICdhJykKICAgICAgICB7CiAgICAgICAgICAgIHN0ZDo6aXN0cmluZ3N0cmVhbSBzdHIobGluZS5zdWJzdHIoMSkpOwogICAgICAgICAgICBpbnQgZmksIHNpOwogICAgICAgICAgICBzdHIgPj4gZmkgPj4gc2k7CiAgICAgICAgICAgIHN0ZDo6Y291dCA8PCAiZmk6ICIgPDwgZmkgPDwgIiAgIHNpOiAiIDw8IHNpIDw8ICdcbic7CiAgICAgICAgICAgIGJzWy0tZmldWy0tc2ldPSAxOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBiczsKfQppbnQgbWFpbigpCnsKICAgIHN0ZDo6dmVjdG9yPHN0ZDo6Yml0c2V0PE4+ID4gdiA9IHJlYWRfZ3JhcGgoInNhbXBsZS5nciIpOwogICAgY29weSh2LnJiZWdpbigpLCB2LnJlbmQoKSwgc3RkOjpvc3RyZWFtX2l0ZXJhdG9yPHN0ZDo6Yml0c2V0PE4+ID4oc3RkOjpjb3V0LCAiXG4iKSk7Cn0K
stdin
YyA5dGggRElNQUNTIEltcGxlbWVudGF0aW9uIENoYWxsZW5nZTogU2hvcnRlc3QgUGF0aHMKYyBodHRwOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uMS5pdC9+Y2hhbGxlbmdlOQpjIFNhbXBsZSBncmFwaCBmaWxlCmMKcCBzcCA2IDgKYyBncmFwaCBjb250YWlucyA2IG5vZGVzIGFuZCA4IGFyY3MKYyBub2RlIGlkcyBhcmUgbnVtYmVycyBpbiAxLi42CmMKYSAxIDIgMTcKYyBhcmMgZnJvbSBub2RlIDEgdG8gbm9kZSAyIG9mIHdlaWdodCAxNwpjCmEgMSAzIDEwCmEgMiA0IDIKYSAzIDUgMAphIDQgMyAwCmEgNCA2IDMKYSA1IDIgMAphIDUgNiAyMAo=
c 9th DIMACS Implementation Challenge: Shortest Paths
c http://w...content-available-to-author-only...1.it/~challenge9
c Sample graph file
c
p sp 6 8
c graph contains 6 nodes and 8 arcs
c node ids are numbers in 1..6
c
a 1 2 17
c arc from node 1 to node 2 of weight 17
c
a 1 3 10
a 2 4 2
a 3 5 0
a 4 3 0
a 4 6 3
a 5 2 0
a 5 6 20