摘要: 题意 There is sequence 1, 12, 123, 1234, ..., 12345678910, ... . Given first N elements of that sequence. You must determine amount of numbers in it that are divisible by 3. 有种数列:1,12,123..给出一个n,求这个数列中能被3整除的数的个数分析先来看看这几组数 第三列数表示1234..n这样的数除以3的余数,第四列数表示能被3整除的个数,即为答案1 1 1 02 12 0 13 123 0 24 1234 1 25.. 阅读全文
posted @ 2012-12-02 18:51 Rinyo 阅读(1041) 评论(0) 推荐(0)
摘要: 题意 给出n朵花,m个花瓶,第i号花插在第j个花瓶可以得到的权值是w,要求从左向右依次插花,求可以得到的最大权值,并打印插花方案分析 简单的线性dp,记f[i,j]为从第一号花开始插,插到了第i号花,且第i号花插在第j个花瓶,所能得到的权值之和为多少 显然,f[i,j]=max{f[i-1,k]+w[i,j]} k∈[i-1,j) 这样,问题的一部分求解完了,关键是如何记录答案 开个数组ans[i,j,0..1]。表示第i朵花插在第j个花瓶时,它的前一朵花为ans[i,j,0],且这朵花插在了f[i,j,1]上。 这样,写个递归就可以得到插花方案Accepted Code 1 /*... 阅读全文
posted @ 2012-12-02 17:56 Rinyo 阅读(178) 评论(0) 推荐(0)
摘要: 题意 给出一个数n,求出比n小且与n互质的个数分析 欧拉函数模板 通式: 欧拉函数还有几个性质: 1.若p为质数,则φ(p)=p-1 2.若p为质数,则φ(p^a)=(p-1)*p^(a-1) 3.若p,q互质,则φ(p*q)=φ(p)*φ(q)Accepted Code 1 /* 2 PROBLEM:sgu102 poj 2407 3 AUTHER:Rinyo 4 MEMO:Euler's totient function 欧拉函数 5 */ 6 7 8 #include<cstdio> 9 int n;10 int main()11 {12 ... 阅读全文
posted @ 2012-12-02 17:00 Rinyo 阅读(292) 评论(0) 推荐(0)