250pt:

直接枚举跳过的位置求和即可。

int n,m;
int ABS(int a)
{
if (a < ) return (-a);
else return a;
}
class FoxAndSightseeing
{
public:
int getMin(vector <int> p)
{
n = p.size();
int ans = ;
for (int i = ; i < n - ; ++i)
{
int s = p[];
int tmp = ;
for (int j = ; j < n; ++j)
{
if (j == i) continue;
tmp += ABS(p[j] - s);
s = p[j];
}
if (ans == || ans > tmp) ans = tmp;
}
return ans;
} };

500pt:

很简单的O(n^2)的DP:

const int inf = 0x7fffffff;
int n,m;
int dp[N];
bool isok(char a, char b)
{
if ((a == 'R' && b == 'G') || (a == 'G' && b == 'B') || (a == 'B' && b == 'R')) return true;
return false;
} class ColorfulRoad
{
public:
int getMin(string road)
{
n = road.size();
for (int i = ; i < n; ++i) dp[i] = inf;
dp[] = ;
for (int i = ; i < n; ++i)
{
for (int j = ; j < i; ++j)
{
if (isok(road[j],road[i]) && dp[j] != inf)
{
dp[i] = min(dp[i],dp[j] + (i - j)*(i - j));
}
}
}
if (dp[n - ] == inf) return -;
else return dp[n - ];
} };

1000pt:

题意:

F(n) = (n - 0^2) * (n - 1^2) * (n - 2^2) * (n - 3^2) * ... * (n - k^2), k满足n - k^2 > 0
然后给出lo,hi,p, 求lo到hi之间的i满足f(i)%p == 0的个数
lo,div取值为[1,10^12];

思路:
比赛的时候想的很乱没写出来,后来想了想当时的思路是错的。无语.....

http://codeforces.com/blog/entry/9405?locale=en   CF有人讨论了这道题目,一看就明白了。  哎....没有想到啊。

我大体说一下思路:
f(n)如果能被p整出,那么f(n)中肯定存在(n - i^2)%p == 0.   i*i < 10^12  那么i <10^6;

又有n%p == i^2 % p;  ---> n = i^2 + k*p,  i^2 + k*p < A  所以如果求[1,A]中满足的个数的话,那么其值就为(A - i^2)/p;   如果我们单纯枚举的话求值的话中间会有重复计算的j^2%p = i^2%p;  所以我们利用set记录一下重复的然后计算即可。

ll getSum(ll A, ll p)
{
set<ll> mods;
ll ans = 0;
for (ll i = 0LL; i * i < A; ++i)
{
if (mods.find((i*i % p)) != mods.end()) continue;
mods.insert(i*i % p);
ans += (A - i * i)/p;
}
return ans;
}
class SparseFactorialDiv2
{
public:
long long getCount(long long lo, long long hi, long long d)
{
return getSum(hi, d) - getSum(lo - 1, d);
} };

  

SRM 596 DIV2的更多相关文章

  1. SRM 657 DIV2

    -------一直想打SRM,但是感觉Topcoder用起来太麻烦了.题目还是英文,不过没什么事干还是来打一打好了.但是刚注册的号只能打DIV2,反正我这么弱也只适合DIV2了.. T1: 题目大意: ...

  2. Topcoder Srm 673 Div2 1000 BearPermutations2

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

  3. Topcoder Srm 671 Div2 1000 BearDestroysDiv2

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

  4. 记第一次TopCoder, 练习SRM 583 div2 250

    今天第一次做topcoder,没有比赛,所以找的最新一期的SRM练习,做了第一道题. 题目大意是说 给一个数字字符串,任意交换两位,使数字变为最小,不能有前导0. 看到题目以后,先想到的找规律,发现要 ...

  5. Topcoder srm 632 div2

    脑洞太大,简单东西就是想复杂,活该一直DIV2; A:水,基本判断A[I]<=A[I-1],ANS++; B:不知道别人怎么做的,我的是100*N*N;没办法想的太多了,忘记是连续的数列 我们枚 ...

  6. SRM 596 DIV 2

    前段时间终于配置好了TopCoder的环境,所以就拿这场的DIV2练习了一下 1. 250pt FoxAndSightseeing 题意 给你n个城市的位置,他们在同一直线上,要求你跳过其中某一个城市 ...

  7. SRM 638 Div2

    2333... 因为TC过少的参与者.加上不断fst 我掉了div2该. 幸运的是完成的背div1该.. 250 水的问题 500 水的问题.. 直接bfs扩展即可了 注意判重.  我还用康托展开了真 ...

  8. SRM 592 DIV2 报告

    昨天下午查看邮箱,看到了topcoder的SRM比赛通知和cf的比赛通知,当时什么也不想做,心里空荡荡的,忽然就想参加一下,试试看.吃完晚饭回来一看,就剩十几分钟了,匆忙把平台下了,就开始等待比赛开始 ...

  9. SRM 670 div2 A B C div1 A(贪心,子问题合并)

    A Cdgame brute force... B Drbalance 贪心,每次选最前面的-变成+,相当于后面所有的负值+2. C Treestrat 考虑集中去抓一个Red Token,以这个To ...

随机推荐

  1. Spark2.x学习笔记:Spark SQL的SQL

    Spark SQL所支持的SQL语法 select [distinct] [column names]|[wildcard] from tableName [join clause tableName ...

  2. [py]彻底细究web框架的wsgi+逻辑处理模块

    wsgi逻辑结构初探 参考: 这里图很精彩,wsgi写的不错 web框架 = wsgi+逻辑处理app 接收请求,返回对应的内容 python wsgiref实现了wsgi规范. from wsgir ...

  3. openstack 部署笔记--neutron控制节点

    控制节点 配置neutron用户及服务 $ . admin-openrc $ openstack user create --domain default --password-prompt neut ...

  4. Ubuntu 14.04 安装 SteamOS 会话

    如何在Ubuntu 14.04上安装steamos会话,以使用户的SteamOS 大图片模式直接从lightdm GTK迎宾开始进入. SteamOS是一个开源的基于Debian Wheezy分支的. ...

  5. Locust性能测试5-参数化批量注册

    前言 实现场景:所有并发虚拟用户共享同一份测试数据,并且保证虚拟用户使用的数据不重复. 例如,模拟10用户并发注册账号,总共有100个手机号,要求注册账号不重复,注册完毕后结束测试 准备数据 虚拟用户 ...

  6. GridView 点滴

    绑定数据时.在后台给GridView添加事件 protected void grd_RowDataBound(object sender, GridViewRowEventArgs e) { //当前 ...

  7. shell篇(二)

    Linux的shell种类比较多,常见的有:Bourne Shell(/user/bin/sh或者/bin/sh), Bourne Again Shell(/user/bin/bash或者/bin/b ...

  8. VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)

    前面一节中鸡啄米进行了文档.视图和框架的概述,本节主要讲解文档.视图.框架结构中各对象之间的关系. 各个对象之间的关系 文档.视图.框架结构中涉及到的对象主要有:应用程序对象.文档模板对象.文档对象. ...

  9. lnmp搭建环境易错误点

    1.虚拟主机使用桥接网络 2.nginx配置server 3.先ping通,service iptables stop 4.php-fpm开启,使之能正确解析php文件,nginx开启 5.mysql ...

  10. Repeater 控件使用总结

      关于Repeater控件使用的一些总结,希望能对将来有机会看到这篇日志的同事有所帮助.也是为了在自己开发有所遗忘的时候能够参考一下.前言:Repeater是一个迭代控件,什么是迭代控件呢?书本上的 ...