【NOIP2015TG D1T3】斗地主

【NOIP2015提高组Day 1】斗地主 Description Input Output solution 这道题就是一道极其恶心的码农题,同样很多细节(第一次不想玩斗地主),挑起来很费劲,要注意细节,具体方法在下面的代码里。 code #include<bits/stdc++.h> using namespace std; int T,n,a[20],ans,kk; void dfs(int sum) { if(sum>ans) return; int bz=0; int k=0; for(int i=1;i&l 阅读详情

第一篇Blog交给一道大搜索……作为NOIP2015Day1的最后一题斗地主并不难想出做法,但是写起来太麻烦了……很多人一看见题目就失去了做这道题的勇气,其实这个题本身还是挺好写的,只是代码相对长许多就是了。

题目要求输入扑克牌张数以及扑克花色与大小,输出最少需要多少步打完手中的牌,那么首先要保证要从每次能出牌的最多张数开始搜索。但是我们能注意到他有三顺有二顺有单顺,那么只是贪心肯定是不行的肯定会错失最优解(例如对于对3、对4、对5、对6、对7以及单8、单9、单10的牌型如果只是一昧出最多牌肯定先打双顺却忽视了拆牌这一说)。所以我们要从三顺开始找,找出从第i种牌开始所能打出的顺子的长度,再从最短开始一个一个搜索回溯找出最优解。

找完了顺子再该怎么办呢?这时候我们发现可能仍有遗留下来的三张以致四张,所以要再判断有没有三张以上的同种牌,没有的话就可以之间加上当前牌的种类总数判断是否更优跳出循环了。如果有,那么我们再分别判断四张、四带一对、四带两对、四带两单以及三带一、三带一对的情况。剩下的零星的单和对子,我们便可以判断一下加上出它们的次数后是否更优后退出了。

其实这个题想骗部分分特别容易……比如对于前6个点N≤4,不存在任何顺子的情况,如果有三张及以上同样的牌直接输出1就能过,没有的话就输出牌种类数也过了……以及关于牌的花色,题目说了对于斗地主花色不起任何作用,所以十有八九只是卡读入的(臆测)……

下面拍出我的代码,略长略难懂见谅

#include<cstdio>
#define A 14
//这里我为了搜索顺子方便把1也就是A重定义成了14 
using namespace std;
int t,N,ans,n;
int a[15];//记录当前手牌张数 
int job(int m)//寻找只有4张以下的手牌时最少出牌次数 
{
	int i,x=0;
	for(i=0;i<=14;i++)
		if(a[i])
			if(a[i]>=3)
				return m+1;
			else
				x++;
	return m+x;
}
void dfs(int j,int m)
{
	int i,k,h;
	if(!m||j>ans)//剪枝,节省时间 
	{
		if(ans>j)
			ans=j;
		return;
	}
	if(m<=4)//同样也是剪枝,因为只剩4张牌以下时情况比较好判断 
	{
		j=job(j);
		if(ans>j)
			ans=j;
		return;
	}
	for(i=3;i<A;i++)
	{
		if(a[i]>=3&&a[i+1]>=3)//判断三顺 
		{
			int x=2;//最短长度 
			for(k=i+2;k<=A;k++)
				if(a[k]<3)
					break;
				else
					x++;
			for(k=2;k<=x;k++)
			{
				for(h=0;h<k;h++)
					a[i+h]-=3;
				dfs(j+1,m-k*3);
				for(h=0;h<k;h++)
					a[i+h]+=3;
			}
		}
		if(a[i]>=2&&a[i+1]>=2&&a[i+2]>=2)//判断二顺 
		{
			int x=3;//最短长度 
			for(k=i+3;k<=A;k++)
				if(a[k]<2)
					break;
				else
					x++;
			for(k=3;k<=x;k++)
			{
				for(h=0;h<k;h++)
					a[i+h]-=2;
				dfs(j+1,m-k*2);
				for(h=0;h<k;h++)
					a[i+h]+=2;
			}
		}
		if(a[i]&&a[i+1]&&a[i+2]&&a[i+3]&&a[i+4])//判断单顺
		{
			int x=5;//最短长度 
			for(k=i+5;k<=A;k++)
				if(!a[k])
					break;
				else
					x++;
			for(k=5;k<=x;k++)
			{
				for(h=0;h<k;h++)
					a[i+h]--;
				dfs(j+1,m-k);
				for(h=0;h<k;h++)
					a[i+h]++;
			}
		} 
	}
	bool b=1;
	int number=0;
	for(i=0;i<=A;i++)//寻找是否有三张以上的同种牌 
		if(a[i]>=3)
		{
			b=0;
			break;
		}
		else
			if(a[i])
				number++;
	if(b==1)//没有三张以上的同种牌,直接在次数上加上剩余牌的种类数,结束搜索 
		if(ans>j+number)
		{
			ans=j+number;
			return;
		}
		else
			return;
	for(i=2;i<=A;i++)
	{
		if(a[i]==4)//判断四张 
		{
			int x=15,y=15;
			for(k=0;k<=A;k++)
			{
				if(a[k]==2)
					if(x<15)//四带两对 
					{
						a[i]-=4;
						a[k]-=2;
						a[x]-=2;
						dfs(j+1,m-8);
						a[i]+=4;
						a[k]+=2;
						a[x]+=2;
						break;
					}
					else//四带一对 
					{
						x=k;
						a[i]-=4;
						a[k]-=2;
						dfs(j+1,m-6);
						a[i]+=4;
						a[k]+=2;
					}
				else
					if(a[k]==1)//四带两单 
					{
						if(y<15)
						{
							a[i]-=4;
							a[k]--;
							a[y]--;
							dfs(j+1,m-6);
							a[i]+=4;
							a[k]++;
							a[y]++;
							break;
						}
						else
							y=k;
					}
					else//炸弹,裸四张 
					{
						a[i]-=4;
						dfs(j+1,m-4);
						a[i]+=4;
					}
			}
		}
		if(a[i]==3)
		{
			for(k=0;k<=14;k++)
			{
				if(a[k]==1)//三带单张 
				{
					a[i]-=3;
					a[k]--;
					dfs(j+1,m-4);
					a[i]+=3;
					a[k]++;
					break;
				}
				if(a[k]==2)//三带一对 
				{
					a[i]-=3;
					a[k]-=2;
					dfs(j+1,m-5);
					a[i]+=3;
					a[k]+=2;
					break;
				}
			}
		} 
	}
}
void work()//处理每组数据 
{
	int i,j,k;
	n=N;
	for(i=0;i<=14;i++)
		a[i]=0;
	ans=0;
	for(i=1;i<=n;i++)
	{
		scanf("%d%d",&k,&j);
		if(k==1)
			a[14]++;
		else
			a[k]++;
	}
	for(i=0;i<=14;i++)
		if(a[i])
			if(a[i]>=3&&n<=4)//n≤4时三张以上直接输出1;
			{
				printf("1\n");
				return;
			}
			else
				ans++;
		if(n<=4)
			printf("%d\n",ans);
		else
		{
			dfs(0,n);
			printf("%d\n",ans);
		}
		return;
}
int main()//读入组数、牌数 
{
	int i;
	scanf("%d%d",&t,&N);
	for(i=1;i<=t;i++)
		work();
	return 0;
}

动态规划-扑克牌最快打完问题 动态规划-扑克牌最快打完问题   当我们遇到一些复杂问题的时候,发现根本无从下手。仅能想到的办法就是穷举所有的可能方案,在所有可能的方案中找到最优的结果。这种情况往往会用到递归,而递归用的得不好可能会导致栈溢出,而且时间复杂度得不到保障。   动态规划的实质就是穷举,它与递归不同的是动态规划采用的是从低到高操作,在操作的过程中记录每一步的局部最优解,后面的结果需要通过前面的局部最优解进行推导。   本人对动态规划问题做了大量的研究,发现在解决动态规划问题时往往采用两种思路:(1)第一种是由点及面、由小及大、 阅读详情

相关推荐

斗地主NOIP提高组

斗地主NOIP提高组

[NOIP2015 提高组] 斗地主

优化:为了防止算重浪费时间,可以钦定此时的牌打出时的牌型序号不可小于前一张打出的同点数牌的牌型序号(因为前面已经枚举过),加上优化后跑得飞快。先把牌按照点数从小到大排好,再从最小的排开始依次枚举这张牌可以与剩下的牌组成哪些牌型打出,写个dfs即可。发现好像NOIP的搜索题很多都是以恶臭模拟为主,搜索为辅。求对于一组手牌,最少需要多少次出牌可以打完。

pyx寄居地 302

斗地主音效

斗地主音效,如果做这个开发能用上,但是不是太全,但也包含了大部分

【noip2015】斗地主(搜索+剪枝)

传送门    UOJ斗地主题意    给出一副扑克中的若干张牌,以及出扑克的规则。求最少出多少次牌将牌全部出完。思路    搜索     牌的花色无任何影响。对于n张扑克,当顺子确定,其余的牌可通过贪心来确定出最小块数。搜索分别拿几个三顺,双顺,单顺,以及各个顺子的起止点。     注意不要弄错了各种扑克的大小:3< 4< 5< 6< 7< 8< 9< 10< J< Q< K< A< 2< 小王

AFO 578

斗地主棋牌UI资源

压缩包里放置有斗地主棋牌手机游戏的全部UI资源,可以直接用于个人棋牌游戏开发。

欢乐斗地主所有图片资源

欢乐斗地主所有图片资源,真正可用,请了解android开发懂纹理PKM格式使用的工程师使用。

{小结}NOIP2015提高组Day1

【NOIP2015提高组Day1】神奇的幻方 【NOIP2015提高组Day1】信息传递 【NOIP2015提高组Day1】斗地主100+80+30=210 还可以吧… 只是有些题挺后悔的

FarmerJohn 974

SUMO仿真教程(1) ——安装环境的设置(Windows 10系统)

SUMO安装环境的设置 目录一.SUMO下载的官方网址二.下载步骤:三.环境设置:1.打开设置环境变量的界面2.用户(Administrator)变量设置3.系统变量设置四.总述 一.SUMO下载的官方网址 sumo的下载地址: 二.下载步骤: 1.以sumo1.8.0为示例进行演示,点击下载地址; 2.选择Windows64位的安装版本,如下图所示: 3.点击对应版本会跳转到如下图所示的界面,等待几秒后会自动下载(温馨提示:请将下载路径提前设置好): 4.到目标存储路径下查看下载完成的SUMO(本

weixin_50632459的博客 1万+

NOIP2015 Day 1 T3 斗地主

首先我们把A存到a[12],把2存到a[13]中,这样处理顺子比较好处理如果有四张的牌首先我们肯定是带两张单牌比较优然后是带两个对子优,之后是一个对子因为对子组成顺子比单牌容易,所以优先搞单牌三张的类似然后枚举三种顺子逐一枚举各种方案,去找最优解因为顺子并不是越长越好的,打过斗地主的都知道吧一个可行性剪枝是当现在的出牌的次数大于当前最优的方案就直接返回,不知道会快多少呢每次的ans的初始值为23,因

ToheartZhang的博客 372

手把手教你用Cadence Virtuoso设计折叠式共源共栅放大器(0.18μm工艺实战)

本文详细介绍了在0.18μm工艺下使用Cadence Virtuoso设计折叠式共源共栅放大器的完整流程。从工艺参数获取、电路架构分析到具体参数计算和仿真验证,提供了实战设计指南,帮助工程师掌握这一模拟IC设计中的关键技术,特别适合需要中等增益和较大输出摆幅的应用场景。

open4的博客 410

【算法实战】Keystone变换:从原理到MATLAB实现的距离走动校正

本文深入解析Keystone变换在雷达信号处理中的距离走动校正应用,从原理到MATLAB实现全面讲解。通过三种实现方法(DFT+IFFT、Sinc插值、Chirp-Z变换)的对比分析,结合实战案例展示如何有效解决高速目标导致的距离单元跨越问题,提升多普勒频谱聚焦质量。

weixin_29055699的博客 295

[NOIP 2015TG D1T3] 斗地主

题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏。斗地主是一种使用黑桃、红心、梅花、方片的A到K加上大小王的共54张牌来进行的扑克牌游戏。在斗地主中,牌的大小关系根据牌的数码表示如下:3<4<5<6<7<8<9<10<J<Q<K<A<2<小王<大王,而花色并不对牌的大小产生影响。每一局游戏中,一副手牌由n...

a8233821的博客 187

【迁移学习】域对抗迁移网络 DANN

Domain-Adversarial Training of Neural Networks

这个博客太懒了什么都没说 8417

【NOIP2015TG】solution

链接:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83%2C32 D1T1(magic) 题意:看题目。。 解题思路:纯模拟。。。 #include<stdio.h> short f[40][40],n; int main() { scanf("%d",&a...

dizhongchen2809的博客 137

手把手教你学 GPU KMD--1.2:UMD、KMD 与 DDK 的协作关系(下)——权限提升与安全边界

本文探讨了UMD、KMD与DDK协作中的权限提升与安全边界问题。GPU作为强大DMA引擎,必须通过分层权限模型(用户态/内核态)隔离风险,KMD作为守门人对UMD请求进行严格校验。文章详细分析了权限提升路径、安全边界设计(GPU虚拟内存隔离、命令白名单、IOMMU强制隔离等),并列举历史漏洞案例说明安全边界的重要性。现代增强方案包括虚拟化与可信执行环境。核心安全原则是"永远不信任用户态数据",需对所有地址、命令、资源和DMA进行严格管控。

amy_mhd的博客 324

QEMU源码全解析7 —— QEMU主函数

QEMU源码全解析7 —— QEMU主函数

phmatthaus的专栏 1294

4325. 【NOIP2015提高组Day1】斗地主

总结: 作为Day1的T3,看似很难,其实也很难(废话,不难是T3?) 。 主要考察的是实现代码的能力,虽说是搜索,但是要细心,用心,还要大量的时间。而且,如果时间使用不当,这题的分数也不是好拿的。 总而言之,比赛的时候遇到这种恶心的题目,想好要弄到多少分(出题人也是给出了很多水分的机会的),不要过度追求满分(自己实力也不允许,DALAO勿喷)。 douDescriptioninputData Constraint题目解法CODE Description 来正式看看这道题目 Time Limits: 20

Fly_with_dream的博客 496

DDPM代码详细解读(2):Unet结构、正向和逆向过程、IS和FID测试、EMA优化

Diffusion Models专栏文章汇总:入门与实战 前言:大部分DDPM相关的论文代码都是基于《Denoising Diffusion Probabilistic Models》和《Diffusion Models Beat GANs on Image Synthesis》贡献代码基础上小改动的。官方的DDPM是tensorflow TPU版本,暂时没有GPU的版本。上一篇文章介绍了数据集加载,超参数的含义、关键参数的计算方法等,这一篇重点解读一下网络结构。 目录 EMA优化 训练目标.

沉迷单车的追风少年 1万+

【NOIP2015】斗地主(及加强版&原版)

题意   给定一副牌,保证合法(即牌包括2,3,4,5,6,7,8,9,10,J,Q,K,A,王,并且每种牌不超过四张,王不超过两张),给定合法的出牌方案,求最少出牌次数。   方案:   ①.火箭,即双王   ②.炸弹,即4张面值相同的牌   ③.单张和对子   ④.三不带,即3张面值相同的牌

清疚的博客 2499

【WRFDA第三期】OBSPROC namelist 变量总结

OBSPROC namelist 变量总结

WW、forever的博客 1120

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

纸牌游戏:计算最小出牌次数(C#)

实现方式 C#递归计算每组牌型的对应组合,取最小组合数 注意定义:一组牌型意为单张3、对3、三张3、顺子、连对等 实现思路 要获取全部不重复(同值为重复)组合:纸牌游戏弹牌策略:获取全部牌型组合 通过这些不重复的组合计算 这里写自定义目录标题实现方式实现思路欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代...

个人博客 1998

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

算法题:最少出牌次数

题目来源 阿里巴巴2020实习生招聘在线笔试(3月20日场) 题目描述 有一叠扑克牌,每张牌介于1和10之间,有四种出牌方法: 单牌 对子 顺子:如12345 连对:如112233 给10个数,表示1-10每种牌有几张,问最少要多少次能出完 输入样例 1 1 1 2 2 2 2 2 1 1 输出样例 3 样例说明:出三个顺子:12345,45678,678910 思路:枚举+回溯剪枝 下面...

weixin_36228538的博客 1970

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain&#39;s apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath(&#39;DeepLearnToolbox&#39;));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand(&#39;state&#39;,0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = &#39;sigm&#39;;%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, &#39;Too big error&#39;);```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, &#39;Too big error&#39;);```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

2015noip 斗地主

斗地主 题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏。斗地主是一种使用黑桃、红心、梅花、方片的A到K加上大小王的共54张牌来进行的扑克牌游戏。在斗地主中,牌的大小关系根据牌的数码表示如下:3<4<5<6<7<8<9<10<J<Q<K<A<2<小王<大王,而花色并不...

weixin_30823683的博客 358

NOIP 2015 [D1 T3]斗地主

【NOIP2015 Day1】斗地主 Time Limit:40000MS  Memory Limit:1048576K Total Submit:15 Accepted:11 Case Time Limit:2000MS Description         牛牛最近迷上了一种叫斗地主的扑克游戏。斗地主是一种使用黑桃、红心、梅花、方片的A到K加上大小王的共54张牌来进行的扑克牌游戏。

SuperGate的博客 750

NOIP 2015D1T3斗地主

描述 牛牛最近迷上了一种叫斗地主的扑克游戏。斗地主是一种使用黑桃、红心、梅花、 方片的 A 到 K 加上大小王的共 54 张牌来进行的扑克牌游戏。在斗地主中,牌的大小关系根据牌的数码表示如下:3<4<5<6<7<8<9<10<J<Q<K<小王<大王。而花色并不对牌的大小产生影响。每一局游戏中,一副手牌由 n 张牌组成。游戏者每次可以根据规定的牌型进行出牌,首先打光自己的手牌一方取得游戏的胜利。

luoyuef的博客 393
下一篇: 【USACO】Roadblock路障 解题报告
Coder_Num233
博客等级 码龄10年 2粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值