codeforce goodbye 2013

2014-11-24 07:33:30 · 作者: · 浏览: 0

500pt:

分析:每b根就能再生成一根,本着不要浪费的原则就行

代码:

#include 
  
   
#include 
   
     #include
     #include 
     
       #include 
      
        #include 
       
         #include 
        
          #include 
         
           #include 
          
            #include 
           
             #include 
            
              #include 
             
               #include 
              
                #include 
               
                 #include 
                
                  #include 
                 
                   #include 
                  
                    #include 
                   
                     #include 
                    
                      #include 
                     
                       using namespace std; int a,b; int main() { while(cin>>a>>b) { int ret = a; int temp = a; while(temp>=b) { int newa = temp/b; ret+=newa; temp = temp%b+newa; } cout<
                      
                        1000pt:
                       

链接:http://codeforces.com/problemset/problem/379/B

分析:对于每一位,只要大于0,就put a coin,然后右移再左移,为了省事,右移过程中如果右边也大于0,也进行put a coin

代码:

#include 
                        
                         
#include 
                         
                           #include
                           #include 
                           
                             #include 
                            
                              #include 
                             
                               #include 
                              
                                #include 
                               
                                 #include 
                                
                                  #include 
                                 
                                   #include 
                                  
                                    #include 
                                   
                                     #include 
                                    
                                      #include 
                                     
                                       #include 
                                      
                                        #include 
                                       
                                         #include 
                                        
                                          #include 
                                         
                                           #include 
                                          
                                            #include 
                                           
                                             using namespace std; const int N=310; int arr[N]; int n; int main() { while(cin>>n) { for(int i=1;i<=n;i++) cin>>arr[i]; string s = ; for(int i=1;i<=n-1;i++) { while(arr[i]>0) { s+='P'; arr[i]--; if(arr[i]==0) break; s+='R'; if(arr[i+1]>0) { arr[i+1]--; s+='P'; } s+='L'; } s+='R'; } while(arr[n]>0) { s+='P'; arr[n]--; if(arr[n]==0) break; s+='L'; s+='R'; } cout<
                                            
                                              1500pt:
                                             

分析:先按ai排序,再给每个赋值,取前一个+1和自身的较大 值就行,最后按序输出

代码:

#include 
                                              
                                               
#include 
                                               
                                                 #include
                                                 #include 
                                                 
                                                   #include 
                                                  
                                                    #include 
                                                   
                                                     #include 
                                                    
                                                      #include 
                                                     
                                                       #include 
                                                      
                                                        #include 
                                                       
                                                         #include 
                                                        
                                                          #include 
                                                         
                                                           #include 
                                                          
                                                            #include 
                                                           
                                                             #include 
                                                            
                                                              #include 
                                                             
                                                               #include 
                                                              
                                                                #include 
                                                               
                                                                 #include 
                                                                
                                                                  #include 
                                                                 
                                                                   using namespace std; const int N=500000; struct node { node(){index = 0;rating= 0;} node(int _index,int _rating){index = _index;rating = _rating;} int index; int rating; }nodes[N]; int n; bool cmp1(node a,node b) { return a.rating
                                                                  
                                                                   >n) { for(int i=0;i
                                                                   
                                                                    >nodes[i].rating; nodes[i].index = i; } sort(nodes,nodes+n,cmp1); for(int i=1;i
                                                                    
                                                                      先做C题果然是比较明智的选择,这次终于变紫色了。。。