3 条题解

  • -7
    @ 2022-4-19 22:34:32

    严禁抄题解,发现后取消成绩

    • -7
      @ 2021-12-25 12:47:23
      
      设f[i][j]为i个数字分成j份的方案总数
      如果i小于j,都为0
      i>=j的时候,f[i][j]可以分成存在1和不存在1,如果存在1,f[i][j]=f[i-1][j-1]
      不存在1,f[i][j]=f[i-j][j],j个盘子,每个都都大于1,则已经分出去了数j,
      还剩i-j分j成份
      考虑边界,f[i][1]=1,f[0][j]=0.
      #include<bits/stdc++.h>
      using namespace std;
      long long n,k,f[205][10];
      int main()
      {
      	cin>>n>>k;
      	for(int i=1;i<=n;i++) f[i][1]=1;
      	for(int i=1;i<=n;i++)
      	{
      		for(int j=2;j<=k;j++)
      		{
      			if(i>=j) f[i][j]=f[i-1][j-1]+f[i-j][j];
      		}
      	}
      	cout<<f[n][k];
          return 0;
      }
      • -9
        @ 2022-4-24 18:58:28

        写题解请注意

        鼓励大家写题解,但注意题解格式。

        题解一定要有思路解析或代码注释,能否让别人理解你的思路

        也是你的能力的检验,不要只放无意义的代码给大家复制,那就失去了做题的初心。

        给代码两端加上这个会舒服一些

        ```cpp

        你的代码

        ```

        </span>

        这个点在键盘的左上角tab上面那个键,注意切换输入法

        #include<iostream>
        using namespace std;
        int main()
        {
            int n;
            cin>>n;//这是一个注释
            return 0;
        } 
        

        请注意严禁抄袭题解,写题解不要只放代码,需加上你的思路或代码注释。

        抄袭题解一经发现直接取消成绩。

        题解被删除的可能

        1. 代码不符合格式规范
        2. 没有思路讲解或者没有注释,
        3. 无意义的题解

        大家携手共同维护一个良好的编程环境,如果一经发现,多次作乱。可能会被管理员拉黑,请注意,一旦拉黑即失去登陆资格。

        • 1

        信息

        ID
        853
        时间
        1000ms
        内存
        512MiB
        难度
        3
        标签
        递交数
        34
        已通过
        21
        上传者