我希望你是我独家记忆

一段永远封存的记忆,随风而去
posts - 263, comments - 31, trackbacks - 0, articles - 3
   :: 首页 :: 新随笔 ::  :: 聚合  :: 管理

度序列绘图

Posted on 2008-10-17 09:09 Hero 阅读(186) 评论(0)  编辑 收藏 引用 所属分类: 代码如诗--ACM
 1 //度序列绘图
 2 
 3 #include <stdio.h>
 4 #include <stdlib.h>
 5 #include <string.h>
 6 
 7 const int size = 1100 ;
 8 int data[size] ;
 9 
10 int inn ;
11 
12 int cmp( const void *a, const void *b )
13 {
14     return *(int *)b - *(int *)a ;
15 }
16 
17 int main()
18 {
19     //freopen( "in.txt", "r", stdin ) ;
20 
21     while( scanf( "%d"&inn ) != EOF && inn )
22     {
23         memset( data, 0sizeof(data) ) ;
24 
25         forint i=1; i<=inn; i++ ) scanf( "%d"&data[i] ) ;
26 
27         qsort( data+1, inn, sizeof(data[1]), cmp ) ;
28 
29         bool isyes = true ;
30 
31         forint i=1; i<=inn; i++ ) if( data[i]>(inn-1|| data[i]<0 )
32         {
33             isyes = false ; break ;
34         }
35 
36         iffalse == isyes )
37         {
38             printf( "No\n" ) ; continue ;
39         }
40 
41         forint i=1; i<=inn; i++ )
42         {
43             iffalse == isyes )    break ;
44 
45             forint j=i+1; j<=i+data[i]; j++ )
46             {
47                 data[j]-- ;
48                 if( data[j] < 0 )
49                 {
50                     isyes = false ; break ;
51                 }
52             }
53 
54             qsort( data+i+1, inn-i, sizeof(data[1]), cmp ) ;
55         }
56 
57         if( isyes ) printf( "Yes\n" ) ;
58         else        printf( "No\n" ) ;
59     }
60 
61     return 0 ;
62 }

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理