bitstringlistreverser.java
来自「Java版的SAT求解器」· Java 代码 · 共 51 行
JAVA
51 行
/*
* BitStringListReverser.java 1.0 05/11/29
*
* Copyright 2005 Positronic Software.
*
*
*/
/**
* Constrains two IBitStringLists to have the same entries in opposite
* order. Note: The IBitStringLists must have entries (IBitStrings) of
* fixed size.
*
* @author Kerry Michael Soileau
* <blockquote><pre>
* ksoileau@yahoo.com
* http://web.wt.net/~ksoileau/index.htm
* </pre></blockquote>
* @version 1.0, 05/11/29
* @see BitStringEqualizer
* @see Conjunction
* @see IProblem
* @see Problem
*/
package positronic.satisfiability.bitstringlist;
import positronic.satisfiability.bitstring.BitStringEqualizer;
import positronic.satisfiability.elements.Conjunction;
import positronic.satisfiability.elements.IProblem;
import positronic.satisfiability.elements.Problem;
public class BitStringListReverser extends Problem implements IProblem
{
private static final long serialVersionUID = 1L;
public BitStringListReverser(IBitStringList X, IBitStringList Y) throws Exception
{
if(X.size()!=Y.size())
this.setClauses(Problem.unsolvableProblem().getClauses());
else
{
int commonsize=X.size();
IProblem[] p=new IProblem[commonsize];
int count=0;
for(int i=0;i<commonsize;i++)
p[count++]=new BitStringEqualizer(X.getBitString(i),Y.getBitString(commonsize-1-i));
this.setClauses(new Conjunction(p).getClauses());
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?