Maison interface Web tutoriel HTML Codeforces Round #256 (Div. 2) B. Suffix Structures(模拟)_html/css_WEB-ITnose

Codeforces Round #256 (Div. 2) B. Suffix Structures(模拟)_html/css_WEB-ITnose

Jun 24, 2016 pm 12:01 PM
round 模拟

题目链接:http://codeforces.com/contest/448/problem/B


----------------------------------------------------------------------------------------------------------------------------------------------------------
Copier après la connexion
Copier après la connexion
欢迎光临天资小屋:http://user.qzone.qq.com/593830943/main
Copier après la connexion
----------------------------------------------------------------------------------------------------------------------------------------------------------
Copier après la connexion
Copier après la connexion



B. Suffix Structures

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Bizon the Champion isn't just a bison. He also is a favorite of the "Bizons" team.

At a competition the "Bizons" got the following problem: "You are given two distinct words (strings of English letters), s and t. You need to transform word s into word t". The task looked simple to the guys because they know the suffix data structures well. Bizon Senior loves suffix automaton. By applying it once to a string, he can remove from this string any single character. Bizon Middle knows suffix array well. By applying it once to a string, he can swap any two characters of this string. The guys do not know anything about the suffix tree, but it can help them do much more.

Bizon the Champion wonders whether the "Bizons" can solve the problem. Perhaps, the solution do not require both data structures. Find out whether the guys can solve the problem and if they can, how do they do it? Can they solve it either only with use of suffix automaton or only with use of suffix array or they need both structures? Note that any structure may be used an unlimited number of times, the structures may be used in any order.

Input

The first line contains a non-empty word s. The second line contains a non-empty word t. Words s and t are different. Each word consists only of lowercase English letters. Each word contains at most 100 letters.

Output

In the single line print the answer to the problem. Print "need tree" (without the quotes) if word s cannot be transformed into word teven with use of both suffix array and suffix automaton. Print "automaton" (without the quotes) if you need only the suffix automaton to solve the problem. Print "array" (without the quotes) if you need only the suffix array to solve the problem. Print "both" (without the quotes), if you need both data structures to solve the problem.

It's guaranteed that if you can solve the problem only with use of suffix array, then it is impossible to solve it only with use of suffix automaton. This is also true for suffix automaton.

Sample test(s)

input

automatontomat
Copier après la connexion

output

automaton
Copier après la connexion

input

arrayarary
Copier après la connexion

output

array
Copier après la connexion

input

bothhot
Copier après la connexion

output

both
Copier après la connexion

input

needtree
Copier après la connexion

output

need tree
Copier après la connexion

Note

In the third sample you can act like that: first transform "both" into "oth" by removing the first character using the suffix automaton and then make two swaps of the string using the suffix array and get "hot".


代码如下:

#include <iostream>#include <algorithm>using namespace std;#define N 47#define M 100000#include <cstring>int a[N],b[N];char s[M+17], t[M+17];void init(){	memset(a,0,sizeof(a));	memset(b,0,sizeof(b));}int main(){	int i, j;	while(cin >> s)	{		init();		cin>>t;		int lens = strlen(s);		int lent = strlen(t);		for(i = 0; i = lens) //表示不存在不交换s子串的顺序能组成t的情况			{				p = 1;				break;			}			j++;		}		if(p == 1)		{			cout   <br>   <br>   <p></p>    <br>  <p></p> </cstring></algorithm></iostream>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que signifie rond en php Que signifie rond en php Mar 10, 2023 am 10:04 AM

En PHP, round signifie « arrondi » et est une fonction intégrée qui convertit les nombres à virgule flottante en nombres entiers. Cette fonction peut arrondir les nombres à virgule flottante et renvoyer une valeur entière de type float. La syntaxe est « round (nombre, précision, mode). );".

Le simulateur AI adopte le nouveau SOTA en simulation physique ! Le simulateur AI adopte le nouveau SOTA en simulation physique ! Feb 19, 2024 pm 06:50 PM

L'apprentissage automatique rend les simulations d'infographie (CG) plus réalistes ! La méthode s'appelle Neural Flow Maps (NFM), qui peut simuler avec précision la fumée avec quatre vortex : des plus complexes peuvent également être facilement réalisés : vous savez, à l'ère des applications d'IA volant dans le ciel, la simulation physique CG est toujours là. est le monde des algorithmes numériques traditionnels. △NFM simule un « saute-mouton ». Bien que l'application de réseaux de neurones en CG puisse créer des effets visuels éblouissants, elle ne peut pas décrire de manière stricte et robuste les propriétés physiques. △NFM simule des « gouttelettes d'encre » C'est précisément pour cette raison que la simulation physique basée sur les réseaux de neurones est encore au stade de la preuve de concept, et les effets générés sont loin de SOTA. Afin de résoudre ce problème complexe,

Utilisant Transformer comme ordinateur à usage général, il peut également exécuter des algorithmes d'apprentissage en contexte. Cette recherche est très imaginative. Utilisant Transformer comme ordinateur à usage général, il peut également exécuter des algorithmes d'apprentissage en contexte. Cette recherche est très imaginative. Apr 13, 2023 am 11:31 AM

Transformer est devenu un choix populaire pour diverses tâches d’apprentissage automatique et a obtenu d’excellents résultats, alors comment peut-il être utilisé autrement ? Des chercheurs dotés d’une grande imagination souhaitent en effet l’utiliser pour concevoir des ordinateurs programmables ! Les auteurs de cet article, intitulé « Looped Transformers as Programmable Computers », viennent de l'Université de Princeton et de l'Université du Wisconsin et visent à explorer comment utiliser les Transformers pour mettre en œuvre des ordinateurs à usage général. Plus précisément, les auteurs proposent un cadre pour utiliser les réseaux de transformateurs comme ordinateurs à usage général en les programmant avec des poids spécifiques et en les plaçant dans des boucles. dans ce cadre

Comment diviser et arrondir à l'aide de la fonction round() de PHP Comment diviser et arrondir à l'aide de la fonction round() de PHP Mar 21, 2023 pm 04:32 PM

La fonction round() est une fonction très utile dans la bibliothèque de formatage de nombres PHP, qui peut arrondir les nombres à virgule flottante à un nombre spécifié de décimales. Cependant, comme l'opération de division de PHP peut souffrir de décimales infinies ou d'une perte de précision, l'arrondi du diviseur est également nécessaire. Ensuite, nous expliquerons en détail comment utiliser la fonction round() de PHP pour diviser et arrondir.

Comment utiliser la fonction ROUND pour intercepter les décimales dans MySQL Comment utiliser la fonction ROUND pour intercepter les décimales dans MySQL Jul 13, 2023 pm 09:21 PM

Comment utiliser la fonction ROUND dans MySQL pour intercepter le nombre de décimales. Dans MySQL, vous pouvez utiliser la fonction ROUND pour intercepter le nombre de décimales. La fonction ROUND arrondit un nombre à un nombre spécifié de décimales. Ce qui suit vous présentera en détail l’utilisation de la fonction ROUND et fournira des exemples de code. Syntaxe : ROUND(X,D)X représente le nombre à arrondir et D représente le nombre de décimales à conserver. Exemple d'utilisation de la fonction ROUND pour intercepter le nombre de décimales : Supposons qu'il existe une table nommée produc

Samsung acquiert la startup britannique Knowledge graph Local AI simule la pensée humaine pour gérer les tâches Samsung acquiert la startup britannique Knowledge graph Local AI simule la pensée humaine pour gérer les tâches Jul 19, 2024 pm 12:44 PM

Récemment, Samsung a annoncé l'acquisition d'Oxford Semantic Technologies, une startup britannique de graphes de connaissances, pour améliorer ses capacités d'IA locales et offrir aux utilisateurs une expérience d'IA plus personnalisée. Le produit principal de l'entreprise est le moteur d'IA RDFox, qui utilise la technologie des graphes de connaissances pour stocker les informations sous forme de réseau interconnecté. La façon dont il traite les données est similaire à la façon dont les humains pensent : acquérir, mémoriser, rappeler et raisonner sur les connaissances. Cette technologie améliorera la compréhension par l'appareil des produits ou services utilisés par les utilisateurs, permettant ainsi une récupération rapide des informations et des recommandations. Il est entendu qu'Oxford Semantic Technologies a été fondée en 2017 par trois professeurs de l'Université d'Oxford : Ian Horrocks, Boris Mortick et Bernardo Cuenca.

Extensions PHP et WebDriver : comment simuler le comportement de défilement et de glissement de l'utilisateur Extensions PHP et WebDriver : comment simuler le comportement de défilement et de glissement de l'utilisateur Jul 07, 2023 pm 04:15 PM

Extensions PHP et WebDriver : Comment simuler les comportements de défilement et de glissement des utilisateurs Avec le développement continu des applications réseau, de plus en plus de sites Web et d'applications doivent simuler les comportements de défilement et de glissement des utilisateurs. Ceci est très important pour les testeurs et les développeurs afin de garantir que les sites Web et les applications fonctionnent correctement dans divers scénarios. Dans cet article, nous présenterons comment utiliser les extensions PHP et WebDriver pour simuler le comportement de défilement et de glissement des utilisateurs. WebDriver est un outil pour automatiser les navigateurs,

Comment utiliser GitLab pour les tests et la simulation d'API Comment utiliser GitLab pour les tests et la simulation d'API Oct 27, 2023 pm 05:35 PM

Comment utiliser GitLab pour les tests et la simulation d'API Introduction : Dans le processus de développement logiciel, les tests et la simulation d'API (Application Programming Interface, interface de programmation d'application) sont une étape très importante. Ils peuvent aider les développeurs à vérifier l'exactitude et les performances de l'API. et peut découvrir les problèmes potentiels à l'avance. GitLab est une plateforme d'hébergement de code très populaire qui implémente des fonctions telles que le contrôle de version et la collaboration en équipe. Cet article explique comment utiliser Git

See all articles