(构造)【CF 989C】C. A Mist of Florescence

这个逻辑题。。真是有点蠢,没经验,数据都不看仔细就瞎敲代码了,算是长记性了。

给四个数字,分别是字符A、B、C、D的联通块的个数,但是数据范围给出的是每个字符的联通块最多也就100个,加起来400个。n和m的范围却是1到50,所以直接构造一个很大的图,中间弄出分隔的一小块用来填充字符就好了。

当晚我是没想到,过了两天想了个构造,应该还算好敲的。先构造出下图这样的,‘X'代表可以用来填充其他字符的位置,其他的就是固定了的字符。然后再将a、b、c、d的数量-1(因为填充下面这个构造图就已经出现了一个联通块),再分别将'A' 'B' 'C' 'D'分别填充在1~8,9~16,17~24,25~32行中的'X'位置。

32 50
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
XCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
XCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
XCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXC
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
XCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXCXC
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
XDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXD
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
XDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXD
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
XDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXD
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
XDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXD
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
XAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
XAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
XAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
XAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXAXA
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
XBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
XBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
XBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

XBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXBXB


/*
* @Author: Samson
* @Date:   2018-06-11 22:23:03
* @Last Modified by:   Samson
* @Last Modified time: 2018-06-14 00:00:20
*/
//   @URL : http://codeforces.com/contest/989/problem/C
#include<bits/stdc++.h>
#include<algorithm>
#include <cstdlib>
#define INF 0x3f3f3f3f
using namespace std;
typedef long long LL;
const int MAXN = 1e5+10;

char ch[55][55];

void init(int row,char c)
{
	for(int i = row; i < 8+row; ++i)
	{
		for(int j = 1; j <= 50; ++j)
		{
			if(i%2 || j%2==0)
				ch[i][j] = c;
		}
	}
}

void fill_in(int row,char f,int num)
{
	char blank = ch[row][1];
	for(int i = row; i<8+row; ++i)
	{
		if(i%2)	continue;
		for(int j = 1; j<=50; j += 2)
		{
			if(!num)
				ch[i][j] = blank;
			else if(num--)
				ch[i][j] = f;
		}
	}
}
void print()
{
	printf("32 50\n");
	for(int i = 1; i <= 2*4*4; ++i)
	{
		for(int j = 1; j <= 50; ++j)
		{
			printf("%c", ch[i][j]);
		}
		printf("\n");
	}
}

int main(void)
{
	int a[5];
	char word[] = {'A','B','C','D'};
	while(~scanf("%d%d%d%d",&a[0],&a[1],&a[2],&a[3]))
	{
		memset(ch,0,sizeof ch);
		init(1,'C'), init(9,'D'), init(17,'A'), init(25,'B');
		for(int row = 1,i = 0; i < 4; row += 2*4,++i)
		{
			fill_in(row,word[i],a[i]-1);
		}
		print();
	}
	return 0;
}



针对您提供的问题,我分别给出以下解答: 针对引用的问题,您可以按照以下步骤解决: 1. 首先,需要确认您的tensorflow版本是否为2.0及以上版本,因为在tensorflow 2.0版本中,contrib模块已经被移除。 2. 如果您的tensorflow版本为2.0及以上版本,那么您需要将代码中的所有contrib相关的函数替换为tf.compat.v1模块下的对应函数。 3. 如果您的tensorflow版本为1.x版本,那么您需要检查您的代码中是否正确导入了tensorflow.contrib模块,如果没有导入,可以通过以下代码导入: ```python import tensorflow as tf tf.contrib.resampler() ``` 如果以上方法都无法解决您的问题,建议您检查您的代码是否存在其他错误。 针对引用的问题,报错原因是tensorflow官方已经将tensorflow.examples.tutorials模块移除,您可以通过以下步骤解决: 1. 首先,需要确认您的tensorflow版本是否为2.0及以上版本,因为在tensorflow 2.0版本中,tensorflow.examples.tutorials模块已经被移除。 2. 如果您的tensorflow版本为2.0及以上版本,那么您需要将代码中的所有tensorflow.examples.tutorials相关的函数替换为对应的tensorflow官方文档中的示例代码。 3. 如果您的tensorflow版本为1.x版本,那么您需要检查您的代码中是否正确导入了tensorflow.examples.tutorials模块,如果没有导入,可以通过以下代码导入: ```python import tensorflow.examples.tutorials ``` 如果以上方法都无法解决您的问题,建议您检查您的代码是否存在其他错误。 针对引用的问题,您可以按照以下步骤解决: 1. 首先,需要确认您的torchvision版本是否为0.2.1及以上版本,因为在torchvision 0.2.1版本中,MIST拼写错误已经被修复。 2. 如果您的torchvision版本为0.2.1及以上版本,那么您需要将代码中的所有MIST相关的函数替换为正确的MNIST拼写。 3. 如果您的torchvision版本为0.2.1以下版本,那么您需要升级您的torchvision版本到0.2.1及以上版本,可以通过以下代码升级: ```python pip install --upgrade torchvision ``` 如果以上方法都无法解决您的问题,建议您检查您的代码是否存在其他错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值