📄 reverse.cpp
字号:
#include <astl.h>#include <tools.h>#include <cursor.h>#include <minimize.h>#include <dfa.h>#include <string>#include <iostream>#include <stream.h>#include <ccopy.h>#include <determinize.h>using namespace std;const string USAGE = "";const string DESCRIPTION = "reverse the DFA read from stdin";template <class DFA>void run(DFA &A, const config& c){ A.initial(clone(A, clone_cursor<plain>(cin))); NFA_mmap<plain, typename DFA::state_type> B; reverse(A, B); DFA_stream out(cout); if (c.state_mark) clone(out, dfirst_markc(forwarddc(B))); else clone(out, dfirstc(forwarddc(B)));}int main(int argc, char **argv){ config c(argc, argv, 1, "all", USAGE, DESCRIPTION); if (c.representation == "map") { DFA_map<plain> dfa; run(dfa, c); } if (c.representation == "matrix") { DFA_matrix<plain> dfa; run(dfa, c); } if (c.representation == "bin") { DFA_bin<plain> dfa; run(dfa, c); } if (c.representation == "mtf") { DFA_mtf<plain> dfa; run(dfa, c); } if (c.representation == "tr") { DFA_tr<plain> dfa; run(dfa, c); } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -