太弱了,太弱了!

A:基本的判断吧,然后就是边界问题,写了好久,结果发现时房间第二个交的。。

B:真心跪了,还好想出来了,思路想的太慢太慢,结果交上去,落后太多,不过HACK时很多人挂了,

这也是DIV1的A题。做法是:

如果对于一个long long 的数质因数分解师很难做到的。

但是题目告诉了m/2个数,m是分解后质因数的个数。

然后我们想先刷法求出1-10^6的质因数。

如果n有大于10^6的质因数最多2个(n<=10^18)对吧。

然后已经写出了1个,一定会写出一个。

所以 我们对其用1-10^6的素数刷选。

留下的n!=1的也是素数。保存的数再排序。

C:题给跪了,

看的出来时比较简单的题目,比以前的题目都要简单,可就是想不出。

看看别人的代码,只剩下ORZ。

 #include <string>
#include <vector>
#include<iostream>
#include<string.h>
#include<algorithm>
#include<cmath> using namespace std; typedef long long ll;
int dp[][][];
int b[][][]; vector<int>mp[];
#define inf 0x3f3f3f
int n;
int son[]; class TheKingsTree {
public: int dfs(int u,int red,int green)
{
if (b[u][red][green]) return dp[u][red][green]; b[u][red][green]=;
int c1=red+;
int c2=green+;
for (int i=;i<mp[u].size();i++)
{
c1+=dfs(mp[u][i],red+,green);
c2+=dfs(mp[u][i],red,green+);
}
return dp[u][red][green]=min(c1,c2);
}
int getNumber(vector <int> parent) {
for (int i=;i<parent.size();i++)
mp[parent[i]].push_back(i+); return dfs(,,);
}
}; // Powered by FileEdit
// Powered by TZTester 1.01 [25-Feb-2003]
// Powered by CodeProcessor

我把我理解的大概写一下:

DFS(0,0,0)是从节点0开始遍历 且其子节点red=0,green=0;

还要记录状态是否保存了。记忆花搜索

c1=red+1;(采用的是一种我认为的倒序方式)

当前节点为red 然后要加上其值,

c1+=dfs(v,red+1,green);

是把v染成red的值。c1要加上其值。

C2是代表green 依次类推

PS:这种方程在比赛中时怎么也写不出来的。

topcoder 643 DIV2的更多相关文章

  1. topcoder 594 DIV2 foxandclassroom

    暴力枚举 1 #include <iostream> #include <vector> #include <string> using namespace std ...

  2. ACM学习历程—TopCoder SRM691 Div2

    这是我的第一次打TC,感觉打的一般般吧.不过TC的题目确实挺有意思的. 由于是用客户端打的,所以就不发题目地址了. 300分的题: 这题大意是有一段序列只包含+和数字0~9. 一段序列的操作是,从头扫 ...

  3. TopCoder SRM596 DIV2 1000: SparseFactorialDiv2

    题意: For an integer n, let F(n) = (n - 0^2) * (n - 1^2) * (n - 2^2) * (n - 3^2) * ... * (n - k^2), wh ...

  4. topcoder 649 DIV2

    8 A:模拟 9:B:终于看懂题目... 题意:最多分解K次 每分钟一个数可以分解成两个数 或者-1: 关键字:DP,记忆花搜索. DP[I][J]=min(dp[i][j],1+max(dp[ii] ...

  5. Topcoder 658 650 point

    Topcoder 658 div2 500 加强版 不过给了<=20,暴力肯定不行. 然后想DP方程,先二分可能需要的最大次数mid; 然后根据 mid 构造 DP方程. 假设x[i]需要 x个 ...

  6. Topcoder SRM 643 Div1 250<peter_pan>

    Topcoder SRM 643 Div1 250 Problem 给一个整数N,再给一个vector<long long>v; N可以表示成若干个素数的乘积,N=p0*p1*p2*... ...

  7. Topcoder Srm 673 Div2 1000 BearPermutations2

    \(>Topcoder \space Srm \space 673 \space Div2 \space 1000 \space BearPermutations2<\) 题目大意 : 对 ...

  8. Topcoder Srm 671 Div2 1000 BearDestroysDiv2

    \(>Topcoder \space Srm \space 671 \space Div2 \space 1000 \space BearDestroysDiv2<\) 题目大意 : 有一 ...

  9. Codeforce Round #643 #645 #646 (Div2)

    codeforce Round #643 #645 #646 div2 Round #643 problem A #include<bits/stdc++.h> using namespa ...

随机推荐

  1. C语言警告:warning C4018: “<”: 有符号/无符号不匹配

    问题如下: 代码出问题之处:   原因分析: strlen返回一个无符号整型,也就是unsigned型,比较时应该两边的数据类型相同,故严格上来说,应该将m定义为unsigned型.       修改 ...

  2. Ztack学习笔记(6)-广播组播点播

    Zigbee网络中进行数据通信主要有三种类型:单播.组播.广播.那这三种方式如何设置呢,在哪里设置呢, 一. 广播 当应用程序需要将数据包发送给网络的每一个设备时,使用这种模式.广播的短地址有三种 0 ...

  3. 在openSUSE13.2上gem install rails -v 4.1成功,但是之后不存在rails命令解决

    解决方案为,不要用sudo gem install就好了,卧槽

  4. 在MAC OS 下配置python + Flask ,并支持pyCharm编辑器

    原创咯- flask是一个micro framework ,伸缩性很强.可以部署到openshift 的PAAS里.这个框架上手非常快.喜欢的可以试试. 若实在MAC里,python已经默认安装了.1 ...

  5. springMVC+jpa配置之简单案例

    搭建springMVC+jpa的亲身经历,看着网上的博客,自己摸索着搭建框架结果错误一大堆.现在把流程走一遍,方便以后查看. 其中我遇到这样的一个问题:直接启动tomcat运行保存实体能通过,但是通过 ...

  6. 【EF Code First】 一对一、一对多的多重关系配置

    这里使用相册Album和图片Picture的关系做示例 1,Album与Picture最基本的关系是1-n(一个相册可以有多张图片) 这时Album.Picture实体类可以这么定义 /// < ...

  7. ios 唯一标示符

    大家知道苹果每部 iOS 设备都有一个 UDID,它就像设备的身份证一样,记录着设备的名称.类型甚至一些关于用户的私人信息.通常情况下,UDID 的一个最大功能就是帮助广告发布商向特定用户推送定向广告 ...

  8. OC中数组类NSArray的详解,数组的遍历(二)

    数组类的便利 1.for循环(大家都会的...) 2.NSEmunerator 3.for in 首先重点说下 第二种NSEmunerator枚举器,系统声明是 @interface NSEnumer ...

  9. html转义函数

    public static String filter(String message) { if (message == null) return (null); char content[] = n ...

  10. java笔试题(3)

    short a = 1; a = a + 1; 有错吗? short a = 1; a += 1; 有错吗? 对于short a = 1; a = a + 1;由于a + 1 运算时会自动提升表达式的 ...