搜索
有爱,有技术,有你^_^)y
╱人◕‿‿◕人╲订下契约(注册新用户)

合作站点账号登陆

QQ登录

只需一步,快速开始

快捷导航
楼主: 繁尘、离梦
收起左侧

(背包特别版见3楼)技能训练营续坑!

[复制链接]

该用户从未签到

29

主题

54

好友

1万

积分

懒人

尔等还不速速跪下~

积分
11600
 楼主| 发表于 2013-4-25 18:49:31 | 显示全部楼层
笔迹流下的那瞬间 ,   沉睡了   ,   我在迷惘......
[url=http://d.hiphotos.baidu.com/album/s%3D1400%3Bq
回复 支持 反对

使用道具 举报

该用户从未签到

30

主题

127

好友

2万

积分

技术宅认证程序员

重度中二患者

积分
28325
发表于 2013-4-25 18:53:32 | 显示全部楼层
本帖最后由 foodszhu 于 2013-4-25 19:54 编辑
繁尘、离梦 发表于 2013-4-25 18:49
这就是百度拼音。。。

如果存状态的花数组就要开挺大的吧你这数据不是10000000么。。。
不太懂啊。。
动规和递归。。。。略乱。。。

恩。。。需要再开一个数组记录啊。。。。虽然说长为24数组就能解决。。。不过写起来也有点小麻烦
等死星人
回复 支持 反对

使用道具 举报

该用户从未签到

25

主题

59

好友

8779

积分

序章

积分
8779
发表于 2013-4-25 19:03:00 | 显示全部楼层
1.雞兔同籠
[mw_shl_code=csharp,true]#include <iostream>
using namespace std;
int main()
{ int m,n;
    cin >> m >> n;
   n=(n-2*m)/2;
   cout << n << " " << m-n << endl;
return 0;}[/mw_shl_code]

2.大數加法
[mw_shl_code=cpp,true]#include <iostream>
using namespace std;
int main()
{ int t,c=0;
        cin >> t;
while (t--){
     string a,b;
         char C='0';
         string temp,temp2;
         cin >> a >> b;
         temp=a,temp2=b;
         if (a.length() < b.length())
                 swap(a,b);
         for (int i=1;i<=b.length();i++)
         { a[a.length()-i]+=b[b.length()-i]-'0';
            if (a[a.length()-i] >= 10+'0' && i!=a.length())
                {  a[a.length()-i]-=10;
                   a[a.length()-i-1]+=1;
                }
            else if (a[a.length()-i]>=10+'0')
                { a[a.length()-i]-=10;
                  C+=1;
                }
         }
         if (C!='0')
                a=C+a;
         
         cout << "Case " << ++c << ": " << temp << " + " << temp2 << " = " << a << endl;
}
return 0;}[/mw_shl_code]
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

该用户从未签到

29

主题

54

好友

1万

积分

懒人

尔等还不速速跪下~

积分
11600
 楼主| 发表于 2013-4-25 22:41:40 | 显示全部楼层
terry182 发表于 2013-4-25 19:03
1.雞兔同籠
[mw_shl_code=csharp,true]#include
using namespace std;

string 用的这么熟练肯定没有错拉。试下下面的进阶题目吧= 。 =
笔迹流下的那瞬间 ,   沉睡了   ,   我在迷惘......
[url=http://d.hiphotos.baidu.com/album/s%3D1400%3Bq
回复 支持 反对

使用道具 举报

该用户从未签到

25

主题

59

好友

8779

积分

序章

积分
8779
发表于 2013-4-25 22:54:12 | 显示全部楼层
本帖最后由 terry182 于 2013-4-25 23:48 编辑
繁尘、离梦 发表于 2013-4-25 22:41
string 用的这么熟练肯定没有错拉。试下下面的进阶题目吧= 。 =

我會告訴你,Joseph那題就是我最苦手的嗎..

Knapsack 和 DP 都是做過的題目於是都會..
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

该用户从未签到

11

主题

37

好友

1万

积分

第一章

积分
18487
发表于 2013-4-26 11:54:25 | 显示全部楼层
额。果断是错的。没写出来
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

16

好友

5383

积分

序章

积分
5383
发表于 2013-4-26 18:57:56 | 显示全部楼层
本帖最后由 绯色基 于 2013-4-26 18:59 编辑

[mw_shl_code=c,true]
#include <stdio.h>
#include <stdlib.h>
#define M 100
int Add(int *a,int i);
int N,S,max=0;

int main()
{ int i,j,hg[M]={0},tmpe=0;
        scanf("%d%d", &S,&N);
    for(i=0;i<N;i++)  
        scanf("%d", &hg);
        for(i=0;i<N-1;i++)
                for(j=i+1;j<N;j++)
                        if(hg<hg[j])
                                tmpe=hg,hg=hg[j],hg[j]=tmpe;
   
        for(i=0;i<N;i++)
                {        max=0;
                        tmpe=Add(hg,i);
                        if(tmpe)
                        {printf("yes\n");
                        break;}
        }
                        if(!tmpe)
            printf("no");
        system("pause");
        return 0;
}

int Add(int *a,int i)
{
        
        max+=a;
    if(max==S)
                return 1;
        else if(max<S&&i<N)
                Add(a,i+1);
    else if(max>S&&i<N)
                max-=a,Add(a,i+1);
    else
                return 0;

}

[/mw_shl_code]

我来交简单背包的,基本上就是排序后逐个尝试,自测通过
签名被小宅喵吞掉了~~~~(>_<)~~~~
回复 支持 反对

使用道具 举报

本版积分规则

小黑屋|手机版|技术宅(Z站|基宅) ( 粤ICP备18082987号-1 )

GMT+8, 2025-5-2 00:05 , Processed in 0.090383 second(s), 29 queries , Redis On.

Copyright © 2018 技术宅社区

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表