250

给一个字符串

要求从一种形式换成另一形式


class NamingConvention{
private:
int a, b, c;
public:
int d;
string toCamelCase(string str) {
int p = 0;
while ((p = str.find('_', p)) != string:: npos) {
str[p + 1] = toupper(str[p + 1]);
str.erase(p, 1);
p = p + 1;
}
return str;
}
};

500

一道惊险刺激的好题

可惜就是数据小了点

所以直接枚举答案就能过

这套比赛Div.1的600分题就是它的加强版.

class NarrowPassage2Easy {
public:
int count(vector <int> size, int maxSizeSum) {
int len = size.size();
memset(vis, 0, sizeof(vis));
for (int i = 1; i <= len; i++) {
for (int j = i + 1; j <= len; j++) {
int x = size[i - 1] + size[j - 1];
if (x > maxSizeSum) vis[j][i] = 1;
}
}
int sum = 0;
if (len == 1) return 1;
if (len == 2) {
if (size[0] + size[1] > maxSizeSum) return 1;
return 2;
}
if (len == 3) {
for (int i = 1; i <= len; i++) {
for (int j = 1; j <= len; j++) {
if (i == j) continue;
for (int k = 1; k <= len; k++) {
if (k == i || k == j) continue;
if (vis[i][j] || vis[i][k] || vis[j][k]) continue;
sum++;
}
}
}
}
if (len == 4) {
for (int i1 = 1; i1 <= len; i1++) {
for (int i2 = 1; i2 <= len; i2++) {
if (i1 == i2) continue;
for (int i3 = 1; i3 <= len; i3++) {
if (i1 == i3 || i2 == i3) continue;
for (int i4 = 1; i4 <= len; i4++) {
if (i1 == i4 || i2 == i4 || i3 == i4) continue;
if (vis[i1][i2] || vis[i1][i3] || vis[i1][i4]
|| vis[i2][i3] || vis[i2][i4]
|| vis[i3][i4]) continue;
sum++;
}
}
}
}
}
if (len == 5) {
for (int i1 = 1; i1 <= len; i1++) {
for (int i2 = 1; i2 <= len; i2++) {
if (i1 == i2) continue;
for (int i3 = 1; i3 <= len; i3++) {
if (i1 == i3 || i2 == i3) continue;
for (int i4 = 1; i4 <= len; i4++) {
if (i1 == i4 || i2 == i4 || i3 == i4) continue;
for (int i5 = 1; i5 <= len; i5++) {
if (i1 == i5 || i2 == i5 || i3 == i5 || i4 == i5) continue;
if (vis[i1][i2] || vis[i1][i3] || vis[i1][i4] || vis[i1][i5]
|| vis[i2][i3] || vis[i2][i4] || vis[i2][i5]
|| vis[i3][i4] || vis[i3][i5]
|| vis[i4][i5]) continue;
sum++;
}
}
}
}
}
}
if (len == 6) {
for (int i1 = 1; i1 <= len; i1++) {
for (int i2 = 1; i2 <= len; i2++) {
if (i1 == i2) continue;
for (int i3 = 1; i3 <= len; i3++) {
if (i1 == i3 || i2 == i3) continue;
for (int i4 = 1; i4 <= len; i4++) {
if (i1 == i4 || i2 == i4 || i3 == i4) continue;
for (int i5 = 1; i5 <= len; i5++) {
if (i1 == i5 || i2 == i5 || i3 == i5 || i4 == i5) continue;
for (int i6 = 1; i6 <= len; i6++) {
if (i1 == i6 || i2 == i6 || i3 == i6 || i4 == i6 || i6 == i5) continue;
if (vis[i1][i2] || vis[i1][i3] || vis[i1][i4] || vis[i1][i5] || vis[i1][i6]
|| vis[i2][i3] || vis[i2][i4] || vis[i2][i5] || vis[i2][i6]
|| vis[i3][i4] || vis[i3][i5] || vis[i3][i6]
|| vis[i4][i5] || vis[i4][i6]
|| vis[i5][i6]) continue;
sum ++;
}
}
}
}
}
}
}
return sum;
}
};

1000

Description

从一颗有边权的无根树的任意节点出发能到达最远的点有多少种

Solution

看了一下数据范围, 感觉好像这个题是来搞笑的

口胡一下吧

首先最多19个点的话\(2^19\)大概是50万, 然后从这些点宽搜或者求最短路?

SRM 638 Div.2的更多相关文章

  1. Topcoder SRM 638 DIV 2 (大力出奇迹)

    水题,就是一个暴力.大力出奇迹. Problem Statement   There is a narrow passage. Inside the passage there are some wo ...

  2. Topcoder口胡记 SRM 562 Div 1 ~ SRM 599 Div 1

    据说做TC题有助于提高知识水平? :) 传送门:https://284914869.github.io/AEoj/index.html 转载请注明链接:http://www.cnblogs.com/B ...

  3. TopCoder SRM 560 Div 1 - Problem 1000 BoundedOptimization & Codeforces 839 E

    传送门:https://284914869.github.io/AEoj/560.html 题目简述: 定义"项"为两个不同变量相乘. 求一个由多个不同"项"相 ...

  4. 竞赛图的得分序列 (SRM 717 div 1 250)

    SRM 717 DIV 1 中 出了这样一道题: 竞赛图就是把一个无向完全图的边定向后得到的有向图,得分序列就是每个点的出度构成的序列. 给出一个合法的竞赛图出度序列, 要求构造出原图(原题是求(u, ...

  5. TopCoder SRM 667 Div.2题解

    概览: T1 枚举 T2 状压DP T3 DP TopCoder SRM 667 Div.2 T1 解题思路 由于数据范围很小,所以直接枚举所有点,判断是否可行.时间复杂度O(δX × δY),空间复 ...

  6. Topcoder SRM 648 (div.2)

    第一次做TC全部通过,截图纪念一下. 终于蓝了一次,也是TC上第一次变成蓝名,下次就要做Div.1了,希望div1不要挂零..._(:зゝ∠)_ A. KitayutaMart2 万年不变的水题. # ...

  7. [topcoder]SRM 646 DIV 2

    第一题:K等于1或者2,非常简单.略.K更多的情况,http://www.cnblogs.com/lautsie/p/4242975.html,值得思考. 第二题:http://www.cnblogs ...

  8. [topcoder]SRM 633 DIV 2

    第一题,http://community.topcoder.com/stat?c=problem_statement&pm=13462&rd=16076 模拟就可以了. #includ ...

  9. TopCoder SRM 639 Div.2 500 AliceGameEasy

    题意: 一个游戏有n轮,有A和B比赛,谁在第 i 轮得胜,就获得 i 分,给出x,y,问A得x分,B得y分有没有可能,如果有,输出A最少赢的盘数 解题思路: 首先判断n(n+1)/2 = (x+y)是 ...

随机推荐

  1. 自动清理N天前的二进制日志

    这里以自动清理5天前的二进制日志为例(做了同步或依赖于二进制日志备份的请慎用): 以root身份登录数据库,执行以下命令: ; 首次设置expire_logs_days参数后需要执行flush log ...

  2. redis中如何对 key 进行分类

    因为redis中的 hash是不支持设置过期时间的,如果我们要 设置过期时间,还要分类存储,可以用下面折中的方法 其实就是我们把 key 定义的有规律一些,通过在key的字符串内部 分类,上图只是因为 ...

  3. 关于AVPlayerItem对象的属性duration返回播放总时长的坑

    最近在使用AVPlayer播放网络流媒体,发现一个坑: 就是playerItem.duration有可能不返回该网络多媒体资源的播放总时间长度,而是返回了一个奇怪的数据:nan, 因为我通过CMTim ...

  4. Codeforces Round #343 (Div. 2) A

    A. Far Relative’s Birthday Cake time limit per test 1 second memory limit per test 256 megabytes inp ...

  5. im-switch -s ibus错误:Error: no configuration file "ibus" exists.

    在虚拟机上安装Ubuntu14.04 后安装ibus输入法,万万没想到在切换输入法的时候居然出错了! 无语了,再网上查了一下,这个错误出现的还是比较少的. 先说Ubuntu输入法(ibus)安装的一般 ...

  6. Mobile phones POJ - 1195 二维树状数组求和

    Suppose that the fourth generation mobile phone base stations in the Tampere area operate as follows ...

  7. distcc配置

    原理图: OS: ubuntu Server 12.04 1.安装 apt-get install distcc 2.配置 将文件/etc/default/distcc修改为如下格式 STARTDIS ...

  8. python 栈和队列

    class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push ...

  9. linux和windows多线程的异同

    linux多线程及线程同步和windows的多线程之间的异同 并不是所有的程序都必须采用多线程,有时候采用多线程性能还不如单线程.采用多线程的好处如下: (1)多线程之间采用相同的地址空间,共享大部分 ...

  10. 解决iText2.0.8+freemark导出pdf不支持base64的解决办法

    转换工具类 public class B64ImgReplacedElementFactory implements ReplacedElementFactory { /** * 实现createRe ...