/*! * Переопределение запроса \b delete. * * Для этой операции требуются права на редактирование. */ FeedReply NodeInfoFeed::del(const QString &path, Channel *channel, const QByteArray &blob) { Q_UNUSED(blob) const bool owner = can(channel, Acl::Edit); const bool moderator = can(channel, Acl::SpecialWrite); if (!owner && !moderator) return Notice::Forbidden; if (path.startsWith(INFO_FEED_MOTD_KEY + LS("/"))) { ChatId id(path.mid(5)); if (id.type() != ChatId::MessageId) return Notice::BadRequest; QVariantList list = m_data.value(INFO_FEED_MOTD_KEY).toList(); list.removeAll(id.toString()); m_data.insert(INFO_FEED_MOTD_KEY, list); return FeedReply(Notice::OK, DateTime::utc()); } if (!owner) return Notice::Forbidden; return Feed::del(path, channel); }
int main() { double t1,t2,t3; int cases,i; x[0]=0; scanf("%d",&cases); while(cases --> 0) { scanf("%d %d %d",&n,&m,&l); if(!n) { printf("%d %f\n",m,(double)l/m); continue; } for(i=0;i<n;i++) scanf("%lf",&x[i]); qsort(x,n,sizeof(double),compd); for(i=1;i<n;i++) if(x[i]==x[i-1]) { printf("feil"); exit(1); } for(i=1;i<n;i++) x[i]-=x[0]; x[0]=0; x[n]=l; for(t3=l,t1=i=0;i<200;i++) { t2=(t1+t3)/2; if(can(t2)) t3=t2; else t1=t2; } can(t3); printf("%.15f\n",t3); } return 0; }
int main( int argc, char** argv ){ #if (CISST_OS == CISST_LINUX_XENOMAI) // Xenomai stuff mlockall(MCL_CURRENT | MCL_FUTURE); RT_TASK task; rt_task_shadow( &task, "CANServer", 80, 0); #endif cmnLogger::SetMask( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskFunction( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskDefaultLog( CMN_LOG_ALLOW_ALL ); if( argc !=2 ){ std::cerr << "Usage: " << argv[0] << " can[?]" << std::endl; return -1; } // Better to have the CAN device in loopback mode std::cout << "Ensure that the CAN device is in loopback mode" << std::endl; // get local component manager mtsManagerLocal *taskManager; taskManager = mtsManagerLocal::GetInstance(); // The RTSocketCAN component #if (CISST_OS == CISST_LINUX_XENOMAI) mtsRTSocketCAN can( "CAN", argv[1], osaCANBus::RATE_1000, osaCANBus::LOOPBACK_ON ); #else mtsSocketCAN can( "CAN", argv[1], osaCANBus::RATE_1000, osaCANBus::LOOPBACK_ON ); #endif taskManager->AddComponent( &can ); // A client CANclient client; taskManager->AddComponent( &client ); // Connect the interfaces taskManager->Connect( client.GetName(), "IO", can.GetName(), "IO" ); taskManager->Connect( client.GetName(), "CTL", can.GetName(), "CTL" ); taskManager->CreateAll(); taskManager->StartAll(); // Wait to exit std::cout << "ENTER to exit" << std::endl; cmnGetChar(); //taskManager->KillAll(); //taskManager->Cleanup(); return 0; }
bool can(int i, int j) { if(s[2][i+j]==0) return true; if(memo[i][j]!=-1) return memo[i][j]; bool ans=false; if(s[0][i]==s[2][i+j]) ans|=can(i+1, j); if(s[1][j]==s[2][i+j]) ans|=can(i, j+1); return (memo[i][j]=ans); }
int main() { while(scanf("%d%d",&n,&m)!=EOF) { memset(map,0,sizeof(map)); int a,b; for(int i=0;i<m;i++) { scanf("%d%d",&a,&b); map[a][b] = 1; map[b][a] = 1; } if(!BFS()) { printf("No\n");continue; } int num = 0; memset(link,0,sizeof(link)); for(int i=1;i<=n;i++) { memset(visit,0,sizeof(visit)); if(can(i)) num++; } printf("%d\n",num/2); } return 0; }
int bfs() { if (x1 == x2 && y1 == y2) return 0; qh = qt = 1; q[1][0] = x1, q[1][1] = y1; ed[x1][y1] = 1; for (int nx, ny, tx, ty; qh <= qt; ) { nx = q[qh][0], ny = q[qh][1]; ++qh; for (int i = 0; i < 4; ++i) { tx = nx + dx[i]; if (tx <= 0 || tx > P) continue; ty = ny + dy[i]; if (ty <= 0 || ty > Q) continue; if (!ed[tx][ty] && can(tx, ty, -z[nx][ny] + z[tx][ty])) { ed[tx][ty] = 1; d[tx][ty] = d[nx][ny] + 1; if (tx == x2 && ty == y2) return d[tx][ty]; ++qt; q[qt][0] = tx, q[qt][1] = ty; } } } return -1; }
int main() { scanf("%d", &T); rep(q, T) { scanf(" %s%s%s", s[0], s[1], s[2]); memset(memo, -1, sizeof(memo)); printf("Data set %d: %s\n", q+1, can(0, 0) ? "yes" : "no"); }
void CanonicalIteratorTest::TestAPI() { UErrorCode status = U_ZERO_ERROR; // Test reset and getSource UnicodeString start("ljubav"); logln("Testing CanonicalIterator::getSource"); logln("Instantiating canonical iterator with string "+start); CanonicalIterator can(start, status); UnicodeString source = can.getSource(); logln("CanonicalIterator::getSource returned "+source); if(start != source) { errln("CanonicalIterator.getSource() didn't return the starting string. Expected "+start+", got "+source); } logln("Testing CanonicalIterator::reset"); UnicodeString next = can.next(); logln("CanonicalIterator::next returned "+next); can.reset(); UnicodeString afterReset = can.next(); logln("After reset, CanonicalIterator::next returned "+afterReset); if(next != afterReset) { errln("Next after instantiation ("+next+") is different from next after reset ("+afterReset+")."); } logln("Testing getStaticClassID and getDynamicClassID"); if(can.getDynamicClassID() != CanonicalIterator::getStaticClassID()){ errln("RTTI failed for CanonicalIterator getDynamicClassID != getStaticClassID"); } }
int main() { int tc, i, sum; scanf("%d", &tc); while (tc--) { scanf("%d", &n); max = 1 << n; sum = 0; for (i = 0; i < n; i++) { scanf("%d", sides + i); sum += sides[i]; } if (sum % 4 != 0) puts("no"); else { len = sum / 4; for (i = 0; i < max; i++) dp[0][i] = dp[1][i] = dp[2][i] = dp[3][i] = -1; puts(res[can(0, 0)]); } } return 0; }
bool verificar_canciones(usuario* us, lista<cancion>* canciones){ bool esta=true; for(int i=0; i < us->get_nro_canc() && esta; i++){ cancion can(us->get_cancion(i), ""); if(!canciones->esta(can)) esta=false; } return(esta); }
char can(int state, int cs) { int l = calculate(state, cs); if (l == len) return can(state, cs + 1); else if (cs == 4) return 1; else if (dp[cs][state] != -1) return dp[cs][state]; else { int i; char result = 0; for (i = 0; i < n && !result; i++) if (!(state & (1 << i)) && l + sides[i] <= len) result |= can(state | (1 << i), cs); return dp[cs][state] = result; } }
void findmoves() { int i,j,k; for (i = 0; i < 9; i++) for (j = 0; j < 9; j++) if (!sudoku[i][j].mark) for (k = 0; k < 9; k++) sudoku[i][j].moves[k] = can(j,i,k+1); }
vector<vector<int>> permute(vector<int>& nums) { vector<vector<int>> results; int len = nums.size(); if (len == 0) { return results; } vector<int> result; vector<bool>can(len, true); permute(nums, len, 0, can, result, results); return results; }
int main( int argc, char** argv ){ mtsTaskManager* taskManager = mtsTaskManager::GetInstance(); cmnLogger::SetMask( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskFunction( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskDefaultLog( CMN_LOG_ALLOW_ALL ); if( argc != 2 ){ std::cout << "Usage: " << argv[0] << " can[0-1]" << std::endl; return -1; } osaSocketCAN can( argv[1], osaCANBus::RATE_1000 ); if( can.Open() != osaCANBus::ESUCCESS ){ CMN_LOG_RUN_ERROR << argv[0] << "Failed to open " << argv[1] << std::endl; return -1; } mtsWAM WAM( "WAM", &can, osaWAM::WAM_7DOF, OSA_CPU4, 80 ); WAM.Configure(); WAM.SetPositions( vctDynamicVector<double>(7, 0.0, -cmnPI_2, 0.0, cmnPI, 0.0, 0.0, 0.0 ) ); taskManager->AddComponent( &WAM ); WAMprobe probe; taskManager->AddComponent( &probe ); taskManager->Connect( probe.GetName(), "Input", WAM.GetName(), "Output" ); taskManager->Connect( probe.GetName(), "Output", WAM.GetName(), "Input" ); taskManager->CreateAll(); taskManager->WaitForStateAll( mtsComponentState::READY ); taskManager->StartAll(); taskManager->WaitForStateAll( mtsComponentState::ACTIVE ); std::cout << "ENTER to exit" << std::endl; cmnGetChar(); taskManager->KillAll(); taskManager->Cleanup(); if( can.Close() != osaCANBus::ESUCCESS ){ CMN_LOG_RUN_ERROR << argv[0] << "Failed to open " << argv[1] << std::endl; return -1; } return 0; }
/* returns 1 if the sudoku has been changed, 0 otherwise */ int removecrossmoves() { int i,j,k; for (i = 0; i < 9; i++) for (j = 0; j < 9; j++) if (!sudoku[i][j].mark) for (k = 0; k < 9; k++) if (sudoku[i][j].moves[k]) sudoku[i][j].moves[k] = can(j,i,k+1); }
int can(int r) { for(int i=1;i<=n;i++) { if(map[r][i] && visit[i] == 0){ visit[i] = 1; if(link[i]==0 || can(link[i])){ link[i] = r; return 1; } } } return 0; }
int main( int argc, char** argv ) { cmnLogger::SetMask( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskFunction( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskDefaultLog( CMN_LOG_ALLOW_ALL ); if( argc != 3 ) { std::cerr << "Usage: " << argv[0] << " can[?] PID" << std::endl; return -1; } osaSocketCAN can( argv[1], osaCANBus::RATE_1000 ); if( can.Open() != osaCANBus::ESUCCESS ) { std::cerr << argv[0] << ": Failed to open device " << argv[1] << std::endl; return -1; } std::istringstream iss( argv[2] ); int pid; iss >> pid; osaPuck puck( (osaPuck::ID)pid, &can ); // Reset the firmware if( puck.Reset() != osaPuck::ESUCCESS ) { std::cerr << ": Failed to reset the puck." << std::endl; return -1; } osaSleep( 1. ); // Ready the puck if( puck.Ready() != osaPuck::ESUCCESS ) { std::cerr << ": Failed to ready the puck." << std::endl; return -1; } osaSleep( 1.0 ); // configure the puck if( puck.InitializeMotor() != osaPuck::ESUCCESS ) { std::cerr << argv[0] << ": Failed to initialize puck" << std::endl; } if( can.Close() != osaCANBus::ESUCCESS ) { std::cerr << argv[0] << ": Failed to close device " << argv[1] << std::endl; return -1; } return 0; }
int main () { MotionController mcontrol; mcontrol.pbreak(); CAN can("IDLE_BOT"); can.init_member("LED0"); char data[8]; data[0] = 0xFF; for (int i = 0; i < 7; i++) data[i+1] = 0x00; can.setValue("LED0", data); return 0; }
void HiggsPlot::PlotSExclusion(double rR_max, TString Option){ styles style; style.setPadsStyle(-1); style.setDefaultStyle(); gStyle->SetPadTickX(1); // No ticks at the right gStyle->SetPadTickY(1); // No ticks at the top int nBins2D = 300; TString hName, epsName = "public_html/Higgs_Favored2D.eps",label; TCanvas can("can","Favored Type III 2HDM"); double rR, rL, rPlus, rMinus; TLatex latex; latex.SetNDC(kTRUE); latex.SetTextAlign(21); latex.SetTextSize(style.TitleSize*1.1); int nSigmas[] = {3,2,1}, Nsig=3; double dl[5]; for(int ns=0; ns<Nsig+1; ns++) dl[ns] = 1-IntG(0,1,-nSigmas[ns],nSigmas[ns]); int colors[] = {kGreen-9, kGreen-3, kGreen+2, kGreen+2, 0}; gStyle->SetPalette(Nsig, colors); TH2F h2D("h2D","",nBins2D,-6.4,3.5, nBins2D,-3.,rR_max); h2D.GetYaxis()->CenterTitle(true); h2D.GetXaxis()->CenterTitle(true); h2D.GetYaxis()->SetTitle("rP"); h2D.GetXaxis()->SetTitle("rM"); for(int binH=1; binH<=nBins2D; binH++){ for(int binB=1; binB<=nBins2D; binB++){ rPlus = h2D.GetYaxis()->GetBinCenter(binB); rMinus = h2D.GetXaxis()->GetBinCenter(binH); rR = (rPlus+rMinus)/2.; rL = (rPlus-rMinus)/2.; h2D.SetCellContent(binH, binB, 1-ProbChi2(4, rR, rL)); } } h2D.SetContour(Nsig,dl); h2D.Draw(Option); TH1F *histo[4]; double legW = 0.25, legH = 0.08; double legX = 1-style.PadRightMargin-0.3, legY = 1-style.PadTopMargin-0.14; TLegend *leg = new TLegend(legX-legW, legY-legH, legX, legY); leg->SetTextSize(0.075); leg->SetFillColor(0); leg->SetTextFont(style.nFont); leg->SetBorderSize(0); leg->SetNColumns(3); for(int ileg=Nsig-1; ileg>=0; ileg--) { TString labhisto = "histo"; labhisto += ileg+1; histo[ileg] = new TH1F(labhisto,"histo",10,0,10); histo[ileg]->SetLineColor(colors[ileg]);histo[ileg]->SetFillColor(colors[ileg]); labhisto = ""; labhisto += nSigmas[ileg]; labhisto += "#sigma"; leg->AddEntry(histo[ileg],labhisto); } leg->Draw(); latex.DrawLatex(0.52, 0.88, "Favored at"); can.SaveAs(epsName); for(int his=0; his<Nsig; his++) histo[his]->Delete(); }
bool canJump(vector<int>& nums) { vector<bool> can(nums.size(), false); can[0] = true; for(int i = 0; i < nums.size(); i++) { for(int j = i - 1; j >= 0; j--) { // optimize for the test case: [1,1,1,1,1,......,1,1,1,1,1] // for(int j = 0; j < i; j++) { if(can[j] == true && j + nums[j] >= i) { can[i] = true; break; } } } return can.back(); }
int solve(int bitmask) { if (bitmask == ((1 << m) - 1)) { return 0; } if (dp[bitmask] != -1) return dp[bitmask]; int ans = 1e9; int indexFirst = findFirstUnmarked(bitmask); for (int r=1 ; r <= maxRadius ; r++) { if (!canUseRadius(r, cod[indexFirst])) continue; int newBitmask = can(bitmask, r, indexFirst); if (newBitmask) { ans = min(ans, 1 + solve(newBitmask)); } } return dp[bitmask] = ans; }
int main() { int v1, v2, v3, px, py, x, y; freopen("fg.in", "r", stdin); freopen("fg.out", "w", stdout); scanf("%d%d", &N, &M); for (int i = 0; i < N; i ++) { for (int j = 0; j < M; j ++) { scanf("%d", &map[i][j]); map[i][j] --; pos[map[i][j]] = i * M + j; } } memset(bl, 255, sizeof(bl)); memset(fa, 255, sizeof(fa)); for (int i = 0; i < N * M; i ++) { px = pos[i] / M; py = pos[i] % M; if (can(px, py)) { bl[i] = P ++; for (int j = 0; j < 4; j ++) { x = px + dx[j]; y = py + dy[j]; if (x >= 0 && x < N && y >= 0 && y < M && bl[map[x][y]] == -1 && map[x][y] < i) { fa[P] = i; bfs(x, y, P ++, i); } } } } scanf("%d", &Q); for (int i = 0; i < Q; i ++) { scanf("%d%d%d", &v1, &v2, &v3); v1 --; v2 --; V[bl[map[v1][v2]]] += v3; } for (int i = N * M - 1; i >= 0; i --) if (!size[bl[i]]) { while (true) { pour(i); if (V[bl[i]] < Eps) break; } } printf("%.2lf\n", ans); return 0; }
int main( int argc, char** argv ){ mlockall(MCL_CURRENT | MCL_FUTURE); RT_TASK task; rt_task_shadow( &task, "GroupTest", 99, 0 ); cmnLogger::SetMask( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskFunction( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskDefaultLog( CMN_LOG_ALLOW_ALL ); if( argc != 2 ){ std::cout << "Usage: " << argv[0] << " rtcan[0-1]" << std::endl; return -1; } osaRTSocketCAN can( argv[1], osaCANBus::RATE_1000 ); if( can.Open() != osaCANBus::ESUCCESS ){ std::cerr << argv[0] << "Failed to open " << argv[1] << std::endl; return -1; } osaBH8_280 BH( &can ); if( BH.Initialize() != osaBH8_280::ESUCCESS ){ std::cerr << "Failed to initialize WAM" << std::endl; return -1; } std::cout << "\n\n\n\n"; double t1 = osaGetTime(); size_t cnt=0; while( 1 ){ Eigen::VectorXd q( 4, 0.1 ); BH.GetPositions( q ); //BH.SetPositions( q ); } cmnGetChar(); return 0; }
int ladderLength(string start, string end, unordered_set<string> &dict) { // Start typing your C/C++ solution below // DO NOT write int main() function map<string, int> dict_map; vector<string> word_list; int dict_index = 0; for (unordered_set<string>::iterator it = dict.begin(); it != dict.end(); it++) { dict_map[*it] = dict_index ++; word_list.push_back(*it); } int n = dict_index; vector<vector<int> > d; int i, j, k; d.resize(n); for (i = 0; i < n; i++) { d[i].resize(n); for (j = 0; j < n; j++) { if (i == j) d[i][j] = 0; else { if (can(word_list[i], word_list[j])) d[i][j] = 1; else d[i][j] = 100000; } } } for (k = 0; k < n; k++) { for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == k || j == k || i == j) continue; d[i][j] = min(d[i][k] + d[k][j], d[i][j]); } } } int ret = d[dict_map[start]][dict_map[end]] ; if (ret > n) return 0; else return ret + 1; }
void ButkevichDrawer::draw() { gROOT->SetStyle("Plain"); TH2D null("null","",1,x0_ph_,x1_ph_,1,y0_ph_,y1_ph_); null.SetStats(false); null.SetTitle(";Q^{2} (GeV^{2});d#sigma/dQ^{2} (cm^{2}/GeV^{2})"); null.GetXaxis()->CenterTitle(); null.GetYaxis()->CenterTitle(); null.GetYaxis()->SetTitleOffset(1.3); TCanvas can("can","canvas",600,600); null.Draw(); graph_fg_ma10_.Draw("lpsame"); graph_fg_ma12_.Draw("lpsame"); //graph_sf_ma10_.Draw("lpsame"); //graph_sf_ma12_.Draw("lpsame"); can.DrawClone(); }
int dfs() { int t,w,i; t=-1; w=0; z[t]=num[0]; while(t<w) { t=t+1; for(i=0;i<nnum;i++) { //printf("%d:%d ",w+1,num[i]); w=w+1; z[w]=num[i]; p[w]=t; if (can(w)) return w; } if (w>=MAXN) return 0; } return 0; }
int main() { freopen("in.txt","r",stdin); scanf("%d %d",&n,&m); for(int i=0;i<m;++i) { int a,b; scanf("%d %d",&a,&b); p[a][b]=p[b][a]=1; } if(!can()) printf("no"); else { printf("yes\n%d\n",ans); for(int i=1;i<=n;++i) if(c[i]==1) printf("%d ",i); } return 0; }
int main() { //CanrecFile can("../dtest/datadumps/background.dump"); //CanrecFile can("../dtest/datadumps/rutoruppner.dump"); //CanrecCan can; CanrecDecfile can("data.dumpdec2"); std::set<Canframe> frameset; std::pair<std::set<Canframe>::iterator, bool> increturn; unsigned long pkgcount = 0; for(;;) { try { Canframe frame; frame = can.getNextFrame(); ++pkgcount; increturn = frameset.insert(frame); if (increturn.second) { std::cout << frame.ident << " \t"; for(unsigned int ii = 0; ii < 8; ++ii) { std::cout << (int)(frame.data[ii]) << "\t"; //for(unsigned char bit = 128; bit > 0; bit/=2) // std::cout << (int)((frame.data[ii] & bit)/bit); //std::cout << " "; } std::cout << pkgcount << std::endl; } } catch (const char* ch) { std::cout << std::endl << "Error: " << ch << std::endl; } } }
int main( int argc, char** argv ){ cmnLogger::SetMask( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskFunction( CMN_LOG_ALLOW_ALL ); cmnLogger::SetMaskDefaultLog( CMN_LOG_ALLOW_ALL ); if( argc != 2 ){ std::cout << "Usage: " << argv[0] << " can[0-1]" << std::endl; return -1; } osaSocketCAN can( argv[1], osaCANBus::RATE_1000 ); if( can.Open() != osaCANBus::ESUCCESS ){ CMN_LOG_RUN_ERROR << argv[0] << "Failed to open " << argv[1] << std::endl; return -1; } osaBH8_280 BH( &can ); if( BH.Initialize() != osaBH8_280::ESUCCESS ){ CMN_LOG_RUN_ERROR << "Failed to initialize WAM" << std::endl; return -1; } std::cout << "\n\n\n\n"; double t1 = osaGetTime(); size_t cnt=0; while( 1 ){ vctDynamicVector<double> q( 4, 0.1 ); BH.GetPositions( q ); //BH.SetPositions( q ); } cmnGetChar(); return 0; }
void Special(pPlayer pl) { int ret=0; if (can(pl->specialrate)&&pl->batt>pl->specialbatt) { switch(pl->ship) { case DREADNAUGHT: ret=FireDreadnaught(pl); break; case FURY: ret=SpecialFury(pl); break; default: break; } if (ret==1) { pl->batt-=pl->specialbatt; } } }