Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public boolean PuedeMoverse(Action where) {
- boolean retVal = true;
- int misionerosIzda = misionerosIzda();
- int canibalesIzda = caniblaesIzda();
- int posBarca = posBarca();
- int misionerosDcha = misionerosDcha();
- int canibalesDcha = caniblaesDcha();
- if (where.equals(LEFT_C)) {
- retVal = ( posBarca==0 && canibalesIzda>=1 && (misionerosDcha >= canibalesDcha + 1 || misionerosDcha==0));
- }
- else if (where.equals(RIGHT_C)) {
- retVal = ( posBarca==1 && canibalesDcha>=1 && (misionerosIzda >= canibalesIzda + 1 || misionerosIzda==0));
- }
- else if (where.equals(LEFT_CC)) {
- retVal = ( posBarca==0 && canibalesIzda>=2 && (misionerosDcha >= canibalesDcha + 2 || misionerosDcha==0));
- }
- else if (where.equals(RIGHT_CC)) {
- retVal = ( posBarca==1 && canibalesDcha>=2 && (misionerosIzda >= canibalesIzda + 2 || misionerosIzda==0));
- }
- else if(where.equals(LEFT_CM)) {
- retVal = ( posBarca==0 && canibalesIzda>=1 && misionerosIzda >=1 && misionerosDcha >= canibalesDcha);
- }
- else if(where.equals(RIGHT_CM)) {
- retVal = ( posBarca==1 && canibalesDcha>=1 && misionerosDcha >=1 && misionerosIzda >= canibalesIzda);
- }
- else if(where.equals(LEFT_MM)) {
- retVal = ( posBarca==0 && misionerosIzda >=2 && misionerosDcha >= canibalesDcha - 2 && (misionerosIzda >= canibalesIzda +2 || misionerosIzda == 2 ) );
- }
- else if(where.equals(RIGHT_MM)) {
- retVal = ( posBarca==1 && misionerosDcha >=2 && misionerosIzda >= canibalesIzda - 2 && (misionerosDcha >= canibalesDcha +2 || misionerosDcha == 2 ) );
- }
- else if(where.equals(LEFT_M)) {
- retVal = ( posBarca==0 && misionerosIzda >=1 && misionerosDcha >= canibalesDcha - 1 && (misionerosIzda >= canibalesIzda +1 || misionerosIzda == 1 ) );
- }
- else if(where.equals(RIGHT_M)) {
- retVal = ( posBarca==1 && misionerosDcha >=1 && misionerosIzda >= canibalesIzda - 1 && (misionerosDcha >= canibalesDcha +1 || misionerosDcha == 1 ) );
- }
- return retVal;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement