diff --git a/algorithm/henzinger_king.h b/algorithm/henzinger_king.h index d931332..601ac80 100644 --- a/algorithm/henzinger_king.h +++ b/algorithm/henzinger_king.h @@ -65,7 +65,8 @@ bool HenzingerKing::query(const T& u, const T& v) { return std::any_of(S.begin(), S.end(), [&](const T& w) { - return In[w].contains(w, u) && Out[w].contains(w, v); + return In[w].adjMatrix.contains(u) && + Out[w].adjMatrix.contains(v); }); } diff --git a/test/dynamic_reachability_test.cc b/test/dynamic_reachability_test.cc index a2fdef9..d1adecd 100644 --- a/test/dynamic_reachability_test.cc +++ b/test/dynamic_reachability_test.cc @@ -127,10 +127,13 @@ TEST_SUITE("Dynamic Reachability Test") { } SUBCASE("HenzingerKing::insert") { - henzingerKing.insert(4, 6); + henzingerKing.insert(9, { { 1, 10 } }); - CHECK_EQ(henzingerKing.query(1, 6), true); - CHECK_EQ(henzingerKing.query(3, 6), true); + CHECK_EQ(henzingerKing.query(1, 9), true); + CHECK_EQ(henzingerKing.query(9, 1), true); + + CHECK_EQ(henzingerKing.query(1, 10), true); + CHECK_EQ(henzingerKing.query(10, 1), false); } } } \ No newline at end of file