「BalticOI 2011」Switch the Lamp On】的更多相关文章

Casper is designing an electronic circuit on a \(N \times M\) rectangular grid plate. There are \(N \times M\) square tiles that are aligned to the grid on the plate. Two (out of four) opposite corners of each tile are connected by a wire. A power so…
「CTSC 2011」排列 要求不存在公差为 A 或者公比为 B 的子列,那么实际上可以把该问题转化为求一个图的最优拓朴序. 任意差为 A 或者比为 B 的两个数连一条边. 求一个合法序列的答案可以用树状数组. 接下来如果直接用优先队列计算最小拓朴序就可以得到32分的好成绩. 如上方法复杂度为\(o(nlog(n))\),远远小于给定时限. 尝试引入随机算法. 每个数都定义一个优先级\(rank\). 用爬山求出局部最优解: ​ 每次先随机生成\(rank\)数组,然后随机一个点,试图将该点$r…
[「CTSC 2011」幸福路径 蚂蚁是可以无限走下去的,但是题目对于精度是有限定的,只要满足精度就行了. \({(1-1e-6)}^{2^{25}}=2.6e-15\) 考虑使用倍增的思想. 定义\(dp[x][y][t]\)为从\(x\)点出发,走\(2^t\)步,到达\(y\)所得到的最大权值. dp转移:\(dp[x][y][t]=max(dp[x][k][t-1]+p^{2^{t-1}} dp[k][y][t-1])\)(\(k \subset [1,n]\)). 一次转移复杂度为\(…
题目描述 译自 BalticOI 2011 Day1 T3「Switch the Lamp On」有一种正方形的电路元件,在它的两组相对顶点中,有一组会用导线连接起来,另一组则不会.有 N×M 个这样的元件,你想将其排列成 N 行 M 列放在电路板上.电路板的左上角连接电源,右下角连接灯泡.试求:至少要旋转多少个正方形元件才能让电源与灯泡连通,若无解则输出 NO SOLUTION. Casper is designing an electronic circuit on a N×M rectan…
题意 记\(s_R\)为\(s\)翻转后的串,求一个串最长的形如\(ss_Rss_R\)的子串长度 题解 这有一个复杂度明显\(O(n)\)的做法,思路来自网上某篇博客 一个双倍回文串肯定当且仅当本身是一个回文串且左右两边都是回文串 所以对于右边的回文串,到它中心\(i\)的时候,\(manacher\)记录的\(maxr\)一定\(>i\) 如果满足这个条件,那就判断\(i\).\(i\)关于\(mid\)的对称串是否有交点,有交点就说明这是双倍回文串:还要注意不能以字母为中心,因为回文串必须…
题意 有一个打字机,支持三种操作: 字符串末尾加一个小写字母 字符串末尾减一个字符 输出这个字符串 经过不超过\(n\)次操作后有\(m\)组询问:\((x,y)\),表示第\(x\)次输出第字符串在第\(y\)次输出第字符串里出现几次 \(n,m \leq 10^5\) 题解 每次加减字符就在trie树上走,输出的话记录一下在哪个结点 然后考虑询问\((x,y)\)暴力怎么做:\(x\)应该是\(y\)一个前缀的后缀,于是我们对于从根到\(y\)路径上每个结点(这相当于枚举\(y\)的后缀),…
loj luogu 这题和NOI那道向量内积一个套路 首先考虑求两行的不同元素个数,可以转化成一个行向量\(a\)和列向量\(b\)相乘得到一个值.如果只有\(A,C\)两种字符,那么令对应权值\(A=1,C=-1\),然后这两行的不同元素个数可以表示成\(\frac{m-ab}{2}\),拓展到四个字符的情况,那么就搞三种形式,分别为\(A=C=1,G=T=-1|A=1,C=-1,G=T=0|A=C=0,G=1,T=-1\),记对应的行向量为\(a1,a2,a3\),列向量为\(b1,b2,b…
AC自动机+DP最短路转移 怎么说呢,挺套路的,也不是太难,但是一上手会被大量的信息淹没思路,还是要注意关注主要信息,不要被一些细节卡住 由于抗体是要在基因序里面出现过,那么考虑把抗体的序列检出AC自动机 然后是经典套路要设在AC自动机上从$j$点出发到$k$点的DP 但是直接DP不好DP 考虑一种突变表是如何计算的,是从前往后不断用单个数字进行扩展,那么这就提示我们记录每一个突变表的前缀和单个数字的信息 那么给其标号,令单个数字的标号就是自己,以方便下文叙述 那么有这样几种转移 $dp[i][…
\(\mathcal{Description}\)   Link.   给定一个大小为 \(n\) 的环,每个结点有一个所属国家.\(k\) 次事件,每次对 \([l,r]\) 区间上的每个点点权加上一个值.对于每个国家,求操作多少次事件后其拥有的结点权值总和不小于给定值.   \(n,k\le3\times10^5\). \(\mathcal{Soltuion}\)   新初二大佬切掉的题兔子都不会 qwq.   于是补习了一下整体二分.   考虑一个单点的情况,显然二分,不过每个点单独二分答…
Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($controllingExpression){ case 'constantExpression1':echo 'statement1'; case 'constantExpression2':echo 'statement2'; case 'constantExpression3':echo 'statemen…
❝ 文章每周持续更新,各位的「三连」是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) ❞ 单体式应用程序 与微服务相对的另一个概念是传统的「单体式应用程序」( Monolithic application ),单体式应用内部包含了所有需要的服务.而且各个服务功能模块有很强的耦合性,也就是相互依赖彼此,很难拆分和扩容. 说在做的各位都写过单体程序,大家都没意见吧?给大家举个栗子,刚开始写代码你写的helloworld程序就是单体程序,一个程序包含所有…
原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/06/24/listview_itemupdating_findcontrol_20130624.aspx ListView与.FindControl()方法的简单练习 #2 -- ItemUpdting事件中抓取「修改后」的值 本文跟上一篇文章有关连,请依照顺序来练习: ListView与.FindControl()方法的简单练习#1 -- Page_Load事件中的错误 http…
在<微信小程序开发实战 之 「配置项」与「逻辑层」>中我们详细阐述了小程序开发的程序和页面各配置项与逻辑层的基础知识.下面我们继续解析小程序开发框架中的「视图层」部分.学习完这两篇文章的基础知识,动手开发一个简单的小程序应用已经不成问题了. 视图层 框架中视图层以给定的样式展现数据并反馈事件给逻辑层. 视图层由WXML(WeiXin Markup language)与WXSS(WeiXin Style Sheet)编写,由组件来进行展示,组件是视图层的基本组成单元. 微信小程序提供了视图窗口.…
每日一句英语学习,每天进步一点点: "Without purpose, the days would have ended, as such days always end, in disintegration." 「少了目标,一天还是会结束,它总是以支离破碎的形式结束.」 前言 羊哥之前写一篇有趣的文章<答应我,别再if/else走天下了可以吗 | CodeSheep >,在文中使用 Java 语言实现了枚举类.工厂模式和策略模式的三种方式,来消除连环的 if / els…
「学习笔记」Treap 前言 什么是 Treap ? 二叉搜索树 (Binary Search Tree/Binary Sort Tree/BST) 基础定义 查找元素 插入元素 删除元素 查找后继 平衡性问题讨论 经典例题 堆 (Heap) 查询操作 插入操作 删除操作 随机二叉查找树 (Treap) 基础定义 Treap 维护平衡的原理--旋转操作 插入操作 删除操作 其他操作 调试技巧 前言 HuaQiMoAo 大佬 GuoShaoYang 大佬 且部分图片可能来源于这两位大佬. 本人太菜…
前两天讲过PHP基础知识的判断条件和流程控制,今天来讲讲PHP基础知识之PHP基础入门--函数! 一.函数的声明与使用 1.函数名是标识符之一,只能有数字字母下划线,开头不能是数字. 函数名的命名,须符合"小驼峰法则":myNameIsXiaoxi my_name_is_xiaoxi 函数名不区分大小写.func() Func() FUNC() 都可以 函数名不能与已有的函数名重复,不能与系统函数名重复. 2.function_exists("func1");用于检…
前言 接着上周写的截图控件继续更新 绘制方框与椭圆. 1.WPF实现截屏「仿微信」 2.WPF 实现截屏控件之移动(二)「仿微信」 3.WPF 截图控件之伸缩(三) 「仿微信」 正文 有开发者在B站反馈第三篇有Issues已修复. 实现在截图区域内绘制 方框与椭圆 有两种方式 1)可以在截图的区域内部添加一个Canvas宽高填充至区域内,在进行绘制方框或椭圆. 2)直接在外层的Canvas中添加,这样需要判断鼠标按下的位置和移动的位置必须在已截图区域内,如超出范围也不绘制到区域外. 本章使用了第…
前端构建工具之gulp(一)「图片压缩」 已经很久没有写过博客了,现下终于事情少了,开始写博吧 今天网站要做一些优化:图片压缩,资源合并等 以前一直使用百度的FIS工具,但是FIS还没有提供图片压缩的相关插件,于是找到了腾讯的智图,而智图目前提供的插件只有gulp-imageisux 无奈之下,只好去学习gulp这款工具了,下面是gulp的相关介绍: gulp介绍 gulp.js 是一种基于流的,代码优于配置的新一代构建工具. Gulp 和 Grunt 类似.但相比于 Grunt 的频繁的 IO…
最近 Android 转用 Swift 的传闻甚嚣尘上,Swift 的 Github 主页上已经有了一次 merge>>「Port to Android」,让我们对 Swift 的想象又多了一些空间. 本期 fir.im Weekly 一如往期精选了一些实用的 iOS,Swift,Android 的开发工具和源码分享,欢迎订阅! 个人品牌:如何在 Github 打造你的爆款开源项目 由@Siva海浪高 分享在gaohailang. 当我们在 Github 上抛出自己的开源项目,都希望 Repo…
距离 2016 年到来只剩 10 个日夜,fir.im 也准备了一些新鲜的东西,比如「高级统计」功能和「跳转应用商店」功能,帮助你更好地管理.优化应用,欢迎大家试用反馈:) 新增高级统计功能 这次更新的高级统计功能,可以根据渠道和活动名称,统计不同渠道和活动带来的下载量.操作步骤如下: 第一步:生成统计链接 点击高级统计,进入统计详情页,然后点击生成统计链接: 设置统计链接的应用版本.渠道名称和活动名称,填写完毕后点击保存: 保存后,可在链接统计处查看已生成的统计链接和二维码. 第二步:将统计链…
Notepad++ 是个相当好用的免费纯文本编辑器,除了内建的功能相当多之外,也支持外挂模块的方式扩充各方面的应用.以前我都用 UltraEdit 跟 Emeditor,后来都改用免费的 Notepad++ 来编辑程序.写网站文章. 以下介绍一个简单的小应用,如果你偶尔需要同时开启两个不同的文件来检视.比对内容的话,该如何在分割窗口的两边同时展示两个不同文件的内容呢?其实很简单: 对于简体中文版本,按「视图」→「移动/复制当前文档」→「移动到另一视图」,然后单击工具栏上的「垂直同步滚动」按钮或「…
最近在实验室做一些 Zigbee 相关的事情,然而一直没在博客上记录啥东西,也不像原来在公司有动力在 Confluence wiki 上扯东扯西.直到前些阵子,跑到 feibit 论坛上(国内较大的一个 Zigbee 社区),发现有不少刚接触 Zigbee 的朋友,在上面提问:其中有不少问题,我或多或少接触了一些,于是心想,索性在博客上开辟一个类别扯扯 Zigbee 好了. 一来,可以做为一个记录,尤其是今天碰到一个计算结构体偏移量的宏定义,想起之前在 blogspot 上写过一篇「赞叹」Lin…
写完「C语言」单链表/双向链表的建立/遍历/插入/删除 后,如何将内存中的链表信息及时的保存到文件中,又能够及时的从文件中读取出来进行处理,便需要用到”文件“的相关知识点进行文件的输入.输出. 其实,就算不懂得链表,也完全可以学习”文件“相关知识点,但在此之前最好有”指针“基础. 本篇文章整理自<C语言程序设计教程--人民邮电出版社>第十二章——文件,以作文件探讨. 一.数据流与文件概念 二.文件的打开与关闭 三.文件的顺序读写 四.文件的随机读写 五.出错检查 六.低级I/O函数与标准I/O…
之前写过一篇 「C语言」在Windows平台搭建C语言开发环境的多种方式 ,讨论了如何在Windows下用DEV C++.EclipseCDT.VisualStudio.Sublime Test.Clion等IDE/编辑器搭建C语言开发环境,但也只是点到为止的介绍,对每一个开发环境的选择没有详细的步骤与过程: 这次借助C语言期末课程设计文档上介绍用Eclipse开发C语言的时机,逐步图文论证如何用Eclipse从安装到输出自己的第一个C语言Hello World: 欢迎探讨,欢迎互粉: 目录:…
WhatsApp 强制推出新功能「蓝色双勾 (✔✔)」 ,让对方知道你已经看过讯息.一众用户反应极大,因为以后不能再藉口说未看到讯息而不回覆.究竟以后 WhatsApp 是否真的「更难用」? 幸好还有方法可以让你偷看新讯息. 1. 在通知列 (Notification Bar)看当接收到新 WhatsApp 讯息时,无论 iOS / Android 都会在通知列弹出,在那里其实已经可以看到讯息预览.如果是短短的讯息,已经能整个看到.只要不按下去,不开启出来,就不会变成蓝勾.如果讯息太长,就要靠之…
原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/19/multiple_fileupload_asp_net_20130819.aspx FileUpload控件「批次上传 / 多档案同时上传」的范例--以「流水号」产生「变量名称」 之前的两个范例: [C# / ASP.NET]FileUpload控件「批次上传 / 多档案同时上传」的范例(C#语法) [VB / ASP.NET]FileUpload控件「批次上传 / 多档…
获取 URL 中的 GET 参数,无论用什么语言开发网站,几乎是必须会用到的代码.但获取 URL 参数经常需要注意一点就是要先判断是否有这个参数存在,如果存在则取出,如果不存在则用另一个值.这个运算称为「合并运算」,在 JavaScript 非常常见的 || 两个竖线,就是这个意思.今天无意中在 ASP.NET 也看到了「合并运算符」,与 JavaScript 不同的是,它在 .NET 中是用 ?? 两个问号表示的.于是马上就想到可以用在 URL 参数的获取上,大大精简了代码: protecte…
对很多开发者而言,如果网站的日流量达到百万级别,峰值 PV 也突破了 3 万,这样的站点在线下测试的时候总是让人心力交瘁.... 生产环境下的性能监测问题更是尤其让人头疼! 开发同学在想,运维人员也在想:男人在想,女人也在想.现在,值得男女老少一齐关注的问题,恐怕也只有「雾霾」了.众所周知,3M 口罩完美解决了「雾霾」所带来的一系列安全性能问题.那么,在前端性能监控领域,有没有为专为网站打造的「3M」产品呢? 人人都想要「高性能」,可你明白什么是高性能网站吗? 什么叫高性能的网站? 现有两个网站…
「Windows MFC 」「Edit Control」 控件…
原博客 http://ino1970.blog119.fc2.com/blog-entry-163.html GridViewなどで検索中に「処理中メッセージ」を表示する方法 「GridViewなどで検索中に「処理中メッセージ」を表示する方法」これは単純にstylsheetで表示・非表示にする方法で実現します. メッセージエリアを表示させるトリガとなるコントロールは何でもよいですが以下の例ではDropDownList(AutoPostBack=True)です. DropDownListが変更され…