BZOJ1258 三角形tri
找规律神题……
发现如果以4结尾,把4改成1、2、3输出就行了。
如果不以4结尾:
把结尾改成4输出即可,因为一定与三角形的中心相邻。
规律1:如果把串的末尾删去,那么会回到上一层。
如果这个串里只有1种数字,那么它一定在某个角上,只和自己这层的4相邻。
如果这个串里有2种数字,那么他在某条边上,和某层的4相邻,和自己的中心相邻。
如果这个串里有3中数字,那么它在大三角形里面,和这层的4,某层的4,另一层的4都相邻。
于是
规律2:这个串内有几种不同的数字,就和几个三角形相邻,并且一定以4结尾。
这还不够,接着找……
规律3:从后往前扫,第一次出现的数字前的子串+4是个答案不要问我怎么搞出这个规律的
代码:
#include<bits/stdc++.h>
using namespace std;
const int N=55;
char s[N];
int n;
bool appear[4];
int main()
{
scanf("%s",s);
n=strlen(s)-1;
if(s[n]=='4')
{
for(int i=0;i<n;++i)printf("%c",s[i]);puts("1");
for(int i=0;i<n;++i)printf("%c",s[i]);puts("2");
for(int i=0;i<n;++i)printf("%c",s[i]);puts("3");
return 0;
}
for(int i=n;i>=1;--i)
{
int tmp=s[i]-'0';
if(!appear[tmp])
{
for(int j=0;j<i;++j)printf("%c",s[j]);puts("4");
appear[tmp]=true;
}
}
return 0;
}
BZOJ1258 三角形tri的更多相关文章
- BZOJ1258 [CQOI2007]三角形tri 模拟
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1258 题意概括 这种图中,一个三角形的三边如果被其他某一个三角形的一条边包括,那么我们说该三角形和 ...
- 【bzoj1258】三角形tri[CQOI2007](乱搞)
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=1258 这是道很意思的大水题,虽然看上去一脸懵逼,但画张图出来看看也可以窥见一丝端倪. ...
- BZOJ1258: [CQOI2007]三角形tri
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1258 如果最后一位是4,那就改成123就好了. 然后最后一位不是4的话,至多三个答案,然后可以 ...
- 【BZOJ做题记录】07.07~?
在NOI一周前重开一个坑 最后更新时间:7.08 07:38 7.06 下午做的几道CQOI题: BZOJ1257: [CQOI2007]余数之和sum:把k mod i写成k-k/i*i然后分段求后 ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- BZOJ 刷题总结(持续更新)
本篇博客按照题号排序(带*为推荐题目) 1008 [HNOI2008]越狱 很经典的题了..龟速乘,龟速幂裸题,, 1010 [HNOI2008]玩具装箱toy* 斜率优化 基本算是裸题. 1012 ...
- BZOJ1258 [CQOI2007]三角形
Description 画一个等边三角形,把三边的中点连接起来,得到四个三角形,把它们称为T1,T2,T3,T4,如图1.把前三个三角形也这样划分,得到12个更小的三角形:T11,T12,T13,T1 ...
- csu 1812: 三角形和矩形 凸包
传送门:csu 1812: 三角形和矩形 思路:首先,求出三角形的在矩形区域的顶点,矩形在三角形区域的顶点.然后求出所有的交点.这些点构成一个凸包,求凸包面积就OK了. /************** ...
- [算法]检测空间三角形相交算法(Devillers & Guigue算法)
#pragma once //GYDevillersTriangle.h /* 快速检测空间三角形相交算法的代码实现(Devillers & Guigue算法) 博客原地址:http://bl ...
随机推荐
- 碰到的问题——建设基于TensorFlow的深度学习环境
1.解决jupyter notebook问题:socket.error: [Errno 99] Cannot assign requested address 首先要生成一个jupyter的配置文件: ...
- sqlalchemy 连接mysql8.0报 RuntimeError: cryptograpy si requeired for sha256_password 错误
cryptography is required for sha256_password or caching_sha2_password 需要cryptography模块的支持才能连接需要sha25 ...
- 堡垒机安装google-authenticator
公司线上的使用机器不能让用户随意的登陆,所以就不能让开发随意的登陆到生产的机器的.于是就打算使用google-auth的验证方式呢. 如果google-auth的方式. 搭建google-authen ...
- mabatisplus-update
/** * <p> * 根据 whereEntity 条件,更新记录 * </p> * * @param entity 实体对象 (set 条件值,不能为 null) * @p ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:安装zookeeper集群
实验目的 了解zookeeper的概念和原理 学会安装zookeeper集群并验证 掌握zookeeper命令使用 实验原理 1.Zookeeper介绍 ZooKeeper是一个分布式的,开放源码的分 ...
- C. Book Reading 求在[1,n]中的数中,能整除m的数 的个位的和
C. Book Reading time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- android 桌面透明
目录(?)[-] public void setWallpaperOffsetSteps float xStep float yStep Parameters public void setWal ...
- Content Provider基础
1.Content Provider为存储和获取数据提供了统一的接口. 2.Content Provider可以在不同的应用程序之间共享数据. 3.Android为常见的一些数据提供了ContentP ...
- 《N诺机试指南》(一)数组妙用
题目A: 大家思路有可能是这样: 将输入数据全部存储到一个数组里,然后可以冒泡排序一波,从小到大排序 那么怎么找到重复次数呢:我是这样想的,新定义数组b,原数组a,首先b[0] = a[0],定义指针 ...
- lnmp1.5安装swoole
php7.2安装swoole-4.0.1.tgz php5.6安装swoole-1.10.4.tgz wget http://pecl.php.net/get/swoole-4.0.1.tgz ...