Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

说一下自己的一些想法

Posted by Essence_me at 2005-07-29 19:19:31 on Problem 1671
我的同学做的算法是求出一个递推公式, 
我的想法不大一样, 
n=1 a 
n=2 aa ab 
n=3 aaa aab aba abb abc 
可以看到,如果当[N-1]的时候某个单位只有K的字符,那么在[N]的时候它就会演变成K+1种情况 
n=2 aa-->n=3 aaa aab 
n=2 ab-->n=3 aba abb abc 
所以 可以这样用一个结构来解决问题 
int num[50] num[k-1]表示拥有K的字符的单位数目, 
当运行到N时,循环从0到K-1; 
假如num[i]==m; 
则再用个循环将,0到K的数组中加入m; (注意需要使用一个备用数组) 
这样当到达n后,将num[0..n-1]中的值相加就可以了. 
不知道这样做可不可能超时?因为不优化的话O(N三次)

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator