首页 > 学院 > 开发设计 > 正文

HDU 杭电acm 2079-选课时间

2019-11-14 09:53:11
字体:
来源:转载
供稿:网友

题目地址:http://acm.hdu.edu.cn/showPRoblem.php?pid=2079

/************************************************************************

此题深搜即可,但要剪枝,否则超时。

/***************************************************dfs

代码如下:

/***********************

#include<stdio.h>int n,k,T;int a[9][2];int count;void dfs(int start,int sum){	if(sum==n)	{		count++;		return ;	}	if(start>=k||sum>n)	{		return ;	}	for(int i=0;i<=a[start][1];i++)	{		dfs(start+1,sum+i*a[start][0]);	}}int main(){	scanf("%d",&T);	while(T--)	{		scanf("%d%d",&n,&k);		for(int i=0;i<k;i++)		{			scanf("%d%d",&a[i][0],&a[i][1]);		}		count=0;		dfs(0,0);		printf("%d/n",count);	}	return 0;}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表