iOS 8 和 OS X 10.10 中一个被强调了多次的主题就是大一统,Apple 希望通过 Hand-off 和各种体验的无缝切换和集成将用户黏在由 Apple 设备构成的生态圈中。而对开发者而言,今年除了 Swift 的一个大主题也是平台的统一。在 What's New in Cocoa To...
分类:
移动开发 时间:
2014-08-08 01:49:35
阅读次数:
411
Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:1)运行在主线程的Main queue,通过dispatch_get_main_queue获取。/*!* @function dispatch_get_main...
分类:
移动开发 时间:
2014-08-08 01:34:35
阅读次数:
351
HDU 4923 Room and Moor
题意:给出A序列 求满足题目所写的B序列 使得方差最小
思路:可以想到最后的结果中 B序列的值一定是一段一段的 那么我们可以类似贪心去搞 对于一段序列我们可以求出什么样的b值使得方差最小 即序列中1的个数除以序列长度 又因为B是单调的 可以用一个单调栈去模拟 复杂度远远小于n^2 不要被吓怕…
HDU 4925 Apple Tree
题意:n*m的格子 要么种苹果 要么施化肥 施肥后的格子的相邻格子如果种了苹果 则苹果数翻倍 问最多...
分类:
其他好文 时间:
2014-08-07 23:21:55
阅读次数:
339
2014 Multi-University Training Contest 6 Apple Tree(数学题)...
分类:
移动开发 时间:
2014-08-07 23:18:35
阅读次数:
380
HDU 4925 Apple Tree
题目链接
题意:给一个m*n矩阵种树,每个位置可以选择种树或者施肥,如果种上去的位置就不能施肥,如果施肥则能让周围果树产量乘2,问最大收益
思路:推理得到肯定是果树和肥料交叉种好,类似国际象棋棋盘,黑的种,白的施肥,由于格子数不多,直接去枚举每个位置即可。如果题目格子数多的话,其实也可以推出公式一步得到答案
代码:
#inclu...
分类:
移动开发 时间:
2014-08-07 23:16:45
阅读次数:
324
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4925
Apple Tree
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 188 Accepted Sub...
分类:
移动开发 时间:
2014-08-07 23:15:35
阅读次数:
339
题意:n*m网格中种苹果,每个网格要么施肥,要么种一个苹果,每个种苹果的格子,如果它的上下左右有各自有施肥的话,每有一个,苹果数量*2,求怎么种使得苹果数量最多。
思路:交叉种植,即黑白染色法可得到最优解。注意特判当n=m=1时的情况。
#include
#include
#include
#include
using namespace std;
const in...
分类:
移动开发 时间:
2014-08-07 23:12:55
阅读次数:
294
找到规律,各一个种一棵树,或者施肥。先施肥,先种树一样。
Apple Tree
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 197 Accepted Submission(s): 135
Prob...
分类:
移动开发 时间:
2014-08-07 23:11:45
阅读次数:
381
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4925
思路:直接计算坐标和,如果为奇数就种树,但要注意行或列为1的情况。
写啦两种代码:一种直接判断计算的,另一种优化计算的
code1:
#include
#include
#include
#include
using namespace std;
int main()
{
i...
分类:
移动开发 时间:
2014-08-07 23:07:25
阅读次数:
306
间隔着取_(:зゝ∠)_
#include
#include
#include
using namespace std;
typedef long long ll;
int n, m;
int init(int i, int j) {
int cnt = 1;
if(i-1 >= 1) cnt *= 2;
if(i+1 <= n) cnt *= 2;
if(...
分类:
移动开发 时间:
2014-08-07 23:03:55
阅读次数:
255