void Alg(int digit[MAX],int idx, int pos, int digitCount){ int i,count=0;; if (idx == pos){ for (i=0;i<pos; i++){ if (digit[i] == 1){ count ++; } } if (count == digitCount){ for (i=0; i<pos; i++){ printf("%d",digit[i]); } printf("\n"); return; } else return ; } digit[idx] = 1; Alg(digit,idx+1,pos,digitCount); digit[idx] = 0; Alg(digit,idx+1,pos,digitCount); }
Py::Object projectToDXF(const Py::Tuple& args) { PyObject *pcObjShape; PyObject *pcObjDir=0; const char *type=0; float scale=1.0f; float tol=0.1f; if (!PyArg_ParseTuple(args.ptr(), "O!|O!sff", &(TopoShapePy::Type), &pcObjShape, &(Base::VectorPy::Type), &pcObjDir, &type, &scale, &tol)) throw Py::Exception(); TopoShapePy* pShape = static_cast<TopoShapePy*>(pcObjShape); Base::Vector3d Vector(0,0,1); if (pcObjDir) Vector = static_cast<Base::VectorPy*>(pcObjDir)->value(); ProjectionAlgos Alg(pShape->getTopoShapePtr()->getShape(),Vector); bool hidden = false; if (type && std::string(type) == "ShowHiddenLines") hidden = true; Py::String result(Alg.getDXF(hidden?ProjectionAlgos::WithHidden:ProjectionAlgos::Plain, scale, tol)); return result; }
Py::Object projectEx(const Py::Tuple& args) { PyObject *pcObjShape; PyObject *pcObjDir=0; if (!PyArg_ParseTuple(args.ptr(), "O!|O!", &(TopoShapePy::Type), &pcObjShape, &(Base::VectorPy::Type), &pcObjDir)) throw Py::Exception(); TopoShapePy* pShape = static_cast<TopoShapePy*>(pcObjShape); Base::Vector3d Vector(0,0,1); if (pcObjDir) Vector = *static_cast<Base::VectorPy*>(pcObjDir)->getVectorPtr(); ProjectionAlgos Alg(pShape->getTopoShapePtr()->getShape(),Vector); Py::List list; list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.V)) , true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.V1)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.VN)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.VO)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.VI)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.H)) , true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.H1)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.HN)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.HO)), true)); list.append(Py::Object(new TopoShapePy(new TopoShape(Alg.HI)), true)); return list; }
void operator()(CmplxIter1 dstBegin, SrcIter srcBegin, CmplxIter2 tmpBegin, const Twiddler<typename CmplxIter1::value_type::value_type>& twiddler, size_t rows, size_t cols, size_t dstStride, size_t srcStride, size_t tmpStride) { for(size_t c = 0; c < cols; ++c) { Alg()(dstBegin + c*dstStride, srcBegin + c*srcStride, tmpBegin, twiddler, rows, cols*dstStride, cols*srcStride, tmpStride); } }
int main(void){ int arr[ARR_SIZE]; int i; int flag; for(i=0; i<ARR_SIZE; i++){ scanf("%d",&arr[i]); } flag = Alg(arr); printf("%d \n",arr); return 0; }
int main() { int i,result; int numOfCows; int cows[STACK_SIZE]; scanf("%d",&numOfCows); for (i=0; i<numOfCows; i++){ scanf("%d",&cows[i]); } result = Alg(cows,numOfCows); printf("%d\n",result); return 0; }
int main() { int digit[MAX] = {0}; int i; int digitCount, pos; scanf("%d%d",&pos,&digitCount); Alg(digit,0,pos,digitCount); for (i=0; i<pos; i++){ digit[i] = 0; } return 0; }
int main() { int itr; int nCount; int i,result; int numOfCows; int cows[STACK_SIZE]; scanf("%d", &nCount); for(itr=0; itr<nCount; itr++){ scanf("%d",&numOfCows); for (i=0; i<numOfCows; i++){ scanf("%d",&cows[i]); } result = Alg(cows,numOfCows); printf("#testcase%d\n",itr+1); printf("%d\n",result); } return 0; }
Py::Object projectToSVG(const Py::Tuple& args, const Py::Dict& keys) { static char* argNames[] = {"topoShape", "direction", "type", "tolerance", "vStyle", "v0Style", "v1Style", "hStyle", "h0Style", "h1Style", NULL}; PyObject *pcObjShape = 0; PyObject *pcObjDir = 0; const char *extractionTypePy = 0; ProjectionAlgos::ExtractionType extractionType = ProjectionAlgos::Plain; const float tol = 0.1f; PyObject* vStylePy = 0; ProjectionAlgos::XmlAttributes vStyle; PyObject* v0StylePy = 0; ProjectionAlgos::XmlAttributes v0Style; PyObject* v1StylePy = 0; ProjectionAlgos::XmlAttributes v1Style; PyObject* hStylePy = 0; ProjectionAlgos::XmlAttributes hStyle; PyObject* h0StylePy = 0; ProjectionAlgos::XmlAttributes h0Style; PyObject* h1StylePy = 0; ProjectionAlgos::XmlAttributes h1Style; // Get the arguments if (!PyArg_ParseTupleAndKeywords( args.ptr(), keys.ptr(), "O!|O!sfOOOOOO", argNames, &(TopoShapePy::Type), &pcObjShape, &(Base::VectorPy::Type), &pcObjDir, &extractionTypePy, &tol, &vStylePy, &v0StylePy, &v1StylePy, &hStylePy, &h0StylePy, &h1StylePy)) throw Py::Exception(); // Convert all arguments into the right format TopoShapePy* pShape = static_cast<TopoShapePy*>(pcObjShape); Base::Vector3d directionVector(0,0,1); if (pcObjDir) directionVector = static_cast<Base::VectorPy*>(pcObjDir)->value(); if (extractionTypePy && string(extractionTypePy) == "ShowHiddenLines") extractionType = ProjectionAlgos::WithHidden; if (vStylePy) copy(Py::Dict(vStylePy), inserter(vStyle, vStyle.begin())); if (v0StylePy) copy(Py::Dict(v0StylePy), inserter(v0Style, v0Style.begin())); if (v1StylePy) copy(Py::Dict(v1StylePy), inserter(v1Style, v1Style.begin())); if (hStylePy) copy(Py::Dict(hStylePy), inserter(hStyle, hStyle.begin())); if (h0StylePy) copy(Py::Dict(h0StylePy), inserter(h0Style, h0Style.begin())); if (h1StylePy) copy(Py::Dict(h1StylePy), inserter(h1Style, h1Style.begin())); // Execute the SVG generation ProjectionAlgos Alg(pShape->getTopoShapePtr()->getShape(), directionVector); Py::String result(Alg.getSVG(extractionType, tol, vStyle, v0Style, v1Style, hStyle, h0Style, h1Style)); return result; }
void init_algs() { AUFs.push_back(Alg("" , 0)); AUFs[0].name_ = "."; AUFs.push_back(Alg("U", 1)); AUFs.push_back(Alg("U2", 1)); AUFs.push_back(Alg("U'", 1)); const int RL_BOOST = 1; const int SLEDGE_BOOST = 1; triggers[SLOT_H_FL].push_back(Alg("L' U' L", 3 - RL_BOOST)); triggers[SLOT_H_FL].push_back(Alg("L' U2 L", 3 - RL_BOOST)); triggers[SLOT_H_FL].push_back(Alg("L' U L", 3 - RL_BOOST)); triggers[SLOT_H_FL].push_back(Alg("F U F'", 3)); triggers[SLOT_H_FL].push_back(Alg("F U2 F'", 3)); triggers[SLOT_H_FL].push_back(Alg("F U' F'", 3)); triggers[SLOT_I_BL].push_back(Alg("L U L'", 3 - RL_BOOST)); triggers[SLOT_I_BL].push_back(Alg("L U2 L'", 3 - RL_BOOST)); triggers[SLOT_I_BL].push_back(Alg("L U' L'", 3 - RL_BOOST)); triggers[SLOT_I_BL].push_back(Alg("B' U' B", 3)); triggers[SLOT_I_BL].push_back(Alg("B' U2 B", 3)); triggers[SLOT_I_BL].push_back(Alg("B' U B", 3)); triggers[SLOT_J_BR].push_back(Alg("R' U' R", 3 - RL_BOOST)); triggers[SLOT_J_BR].push_back(Alg("R' U2 R", 3 - RL_BOOST)); triggers[SLOT_J_BR].push_back(Alg("R' U R", 3 - RL_BOOST)); triggers[SLOT_J_BR].push_back(Alg("B U B'", 3)); triggers[SLOT_J_BR].push_back(Alg("B U2 B'", 3)); triggers[SLOT_J_BR].push_back(Alg("B U' B'", 3)); triggers[SLOT_K_FR].push_back(Alg("R U R'", 3 - RL_BOOST)); triggers[SLOT_K_FR].push_back(Alg("R U2 R'", 3 - RL_BOOST)); triggers[SLOT_K_FR].push_back(Alg("R U' R'", 3 - RL_BOOST)); triggers[SLOT_K_FR].push_back(Alg("F' U' F", 3)); triggers[SLOT_K_FR].push_back(Alg("F' U2 F", 3)); triggers[SLOT_K_FR].push_back(Alg("F' U F", 3)); triggers[SLOT_K_FR].push_back(Alg("R' F R F'", 4 - SLEDGE_BOOST)); triggers[SLOT_K_FR].push_back(Alg("F R' F' R", 4 - SLEDGE_BOOST)); }