悲剧的HDOJ

悲剧的HDOJ,最近不知道搞的啥,管理员误操作导致数据丢失,结果AC题量由354题编程251题,少了103题,排名也由320变成560名了,本来还准备假期前刷到500题的,又给我增加难度了~~

不多说,继续加油!

发布者

Tanky Woo

Tanky Woo,[个人主页:https://tankywoo.com] / [新博客:https://blog.tankywoo.com]

《悲剧的HDOJ》有12个想法

    1. 哦,这几天还在准备补考的事在~~~
      这是1258的代码:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      
      // Author: Tanky Woo
      // Blog: www.WuTianQi.com
      // Title: HDOJ 1258 Sum It Up
      // About: 
       
      #include <iostream>
      #include <cmath>
      #include <string>
      #include <map>
      #include <algorithm>
      using namespace std;
       
      int a[15], rec[15];
      int cnt = 0;
      int t, n;
      bool flag;
       
      void DFS(int ith, int ans, int len)
      {
          if(ans == t)
          {
              for(int i=0; i<len-1; ++i)
                  cout << rec[i] << "+";
              cout << rec[len-1];
              cout << endl;
              flag = 1;
              return;
          }
          for(int i=ith; i<n; ++i)
          {
              if(i > ith && a[i] == a[i-1])
                  continue;
              if(a[i] + ans <= t)
              {
                  rec[len] = a[i];
                  DFS(i+1, ans+a[i], len+1);
              }
          }
      }
       
      int main()
      {
          //freopen("input.txt", "r", stdin);
          while(cin >> t >> n && (t || n))
          {
              flag = 0;
              cout << "Sums of " << t << ":" << endl;
              cnt = 0;
              for(int i=0; i<n; ++i)
                  cin >> a[i];
              DFS(0, 0, 0);
              if(flag == 0)
                  cout << "NONE\n";
          }
          return 0;
      }

发表评论

电子邮件地址不会被公开。 必填项已用*标注