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. 【POJ2728】Desert King(分数规划)

    [POJ2728]Desert King(分数规划) 题面 vjudge 翻译: 有\(n\)个点,每个点有一个坐标和高度 两点之间的费用是高度之差的绝对值 两点之间的距离就是欧几里得距离 求一棵生成 ...

  2. thread-wait/sleep

    对于sleep()方法,我们首先要知道该方法是属于Thread类中的.而wait()方法,则是属于Object类中的. sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监 ...

  3. Codeforces Round #342 (Div. 2) C

    C. K-special Tables time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  4. Android滚动栏控件的优化

    背景 由于普通TextView的跑马灯效果与焦点获取有关 所以不能直接使用 之前查找到的控件在数据设置方面存在问题 所以通过寻找github上的开源控件 并修改源码 得到一个目前感觉不错的效果 原理  ...

  5. web.xml中出现<servlet-name>default</servlet-name>是什么意思?

    转载自:http://blog.csdn.net/hello5orld/article/details/9407905 在web.xml文件中经常看到这样的配置<servlet-name> ...

  6. JS利用 Sea.js 实现模块化:拖拽、缩放及范围限制

    知识点总结: Sea.js的使用:define.export.seajs.use.require等方法:   参考:http://seajs.org/docs/ Sea.js与require.js的区 ...

  7. CPU上下文切换的次数和时间(context switch)

    什么是CPU上下文切换? 现在linux是大多基于抢占式,CPU给每个任务一定的服务时间,当时间片轮转的时候,需要把当前状态保存下来,同时加载下一个任务,这个过程叫做上下文切换.时间片轮转的方式,使得 ...

  8. Linux常用命令汇总(持续更新中)

    命令 说明 注意点 cat access.log | wc -l 统计行数 awk命令可以做到同样的想过:cat access.log | awk 'END {print NR}' grep vnc  ...

  9. 【Foreign】字串变化 [DP]

    字串变化 Time Limit: 10 Sec  Memory Limit: 128 MB Description 定义一个(大写字母)字符串集合{S},初始时值包含一个给定的字符串S1,每次从中任意 ...

  10. 【BZOJ3998】弦论 [SAM]

    弦论 Time Limit: 10 Sec  Memory Limit: 256 MB[Submit][Status][Discuss] Description 对于一个给定长度为N的字符串,求它的第 ...