Maison base de données tutoriel mysql POJ 3683 Priest John's Busiest Day(2

POJ 3683 Priest John's Busiest Day(2

Jun 07, 2016 pm 03:48 PM
amp b

POJ 3683 Priest John's Busiest Day(2-SAT输出方案) http://poj.org/problem?id=3683 题意: 有N对新人举行婚,且每次婚需要持续d时间,从s时间到t时间之间举行且只能选择s到sd时间或t-d到t时间这两个完整的时间段举行.现在只有一个神父,问他有没有可能参加所

POJ 3683 Priest John's Busiest Day(2-SAT输出方案)

http://poj.org/problem?id=3683

题意:

        有N对新人举行婚礼,且每次婚礼需要持续d时间,从s时间到t时间之间举行且只能选择s到s+d时间或t-d到t时间这两个完整的时间段举行.现在只有一个神父,问他有没有可能参加所有新人的婚礼(待完整段时间且任意两对新人的婚礼时间不重叠)? 输出一个可行的方案.

分析:

        每对新人的婚礼时间只有两种选择,直接就可以转化为2-SAT问题.其中如果对于第i个婚礼与第j个婚礼来说:

        假设i先办的时间区间为[a,b]而j后办的时间区间为[c,d],如何判断[a,b]与[c,d]是否发生了冲突呢?(边界相交不算).

        只有下面两种情况下区间[s1,e1]与区间[s2,e2]才规范相交.

        1. s1

        2. s2

        仔细一看上面两种情况是相同的,只要相交的两个区间的e1 e2 > s1 s2 即可保证这两个区间相交.

        (仔细想想上面情况)

        然后对于冲突的每对新人添加边即可.

AC代码:

#include<cstdio>
#include<cstring>
#include<vector>
using namespace std;
const int maxn=1000+10;
struct Time
{
    int s,e,d;//开始,结束,持续
    Time(){}
    Time(int s,int e,int d):s(s),e(e),d(d){}
}t[maxn];
struct TwoSAT
{
    int n;
    vector<int> G[maxn*2];
    int S[maxn*2],c;
    bool mark[maxn*2];

    bool dfs(int x)
    {
        if(mark[x^1]) return false;
        if(mark[x]) return true;
        mark[x]=true;
        S[c++]=x;
        for(int i=0;i<g if return false true void init n this->n=n;
        for(int i=0;i<n g memset void add_clause x xval y yval bool solve for i="0;i<2*n;i+=2)if(!mark[i]" c="0;" if while>0) mark[S[--c]]=false;
                if(!dfs(i+1)) return false;
            }
        }
        return true;
    }
}TS;
int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n int sh scanf t ts.init for i="0;i<n;i++)" j="i+1;j<n;j++)" if ts.add_clause printf else return><br>
<br>


</n></n></g></int></vector></cstring></cstdio>
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.

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)

Comment installer Windows 11 sur la carte mère ASUS b450 Comment installer Windows 11 sur la carte mère ASUS b450 Dec 31, 2023 am 10:10 AM

ASUS b450 est une très excellente carte mère avec de nombreux utilisateurs. Si vous souhaitez installer le système win11 sur cette carte mère, vous devez activer tpm2.0 et l'option de démarrage sécurisé. De nombreux amis ne sauront peut-être pas comment l'activer. Voyons comment le faire fonctionner. Comment installer win11 sur ASUS b450 : 1. Tout d'abord, nous redémarrons le système, utilisons "F2" pour entrer dans les paramètres du BIOS, puis cliquons sur "Mode avancé" dans le coin inférieur droit pour entrer. 2. Entrez ensuite « Secure Boot » sous l'option « Démarrage ». 3. Sélectionnez ensuite « Mode Windows UEFI » à droite de « Type de système d'exploitation » 4. Une fois les paramètres terminés, cliquez sur « Rechercher » dans le coin supérieur droit pour entrez dans la recherche. 5. Recherchez ensuite « PTT » et cliquez sur

Installation officielle du site officiel de Bitget (Guide du débutant 2025) Installation officielle du site officiel de Bitget (Guide du débutant 2025) Feb 21, 2025 pm 08:42 PM

Bitget est un échange de crypto-monnaie qui fournit une variété de services de trading, notamment le trading au comptant, le trading de contrats et les dérivés. Fondée en 2018, l'échange est basée à Singapour et s'engage à fournir aux utilisateurs une plate-forme de trading sûre et fiable. Bitget propose une variété de paires de trading, notamment BTC / USDT, ETH / USDT et XRP / USDT. De plus, l'échange a une réputation de sécurité et de liquidité et offre une variété de fonctionnalités telles que les types de commandes premium, le trading à effet de levier et le support client 24/7.

Quelle pièce est l'AMP ? Quelle pièce est l'AMP ? Feb 24, 2024 pm 09:16 PM

Qu’est-ce que la pièce AMP ? Le token AMP a été créé par l'équipe Synereo en 2015 comme principale devise de trading de la plateforme Synereo. Le jeton AMP vise à offrir aux utilisateurs une meilleure expérience économique numérique grâce à de multiples fonctions et utilisations. Objectif du jeton AMP Le jeton AMP a plusieurs rôles et fonctions dans la plateforme Synereo. Premièrement, dans le cadre du système de récompense en crypto-monnaie de la plateforme, les utilisateurs peuvent gagner des récompenses AMP en partageant et en promouvant du contenu, un mécanisme qui encourage les utilisateurs à participer plus activement aux activités de la plateforme. Les jetons AMP peuvent également être utilisés pour promouvoir et distribuer du contenu sur la plateforme Synereo. Les utilisateurs peuvent augmenter la visibilité de leur contenu sur la plateforme en utilisant des jetons AMP pour attirer davantage de téléspectateurs à consulter et à partager.

Téléchargez l'application de version mobile du site Web de monnaie virtuelle (les dix premiers recommandés au monde) Téléchargez l'application de version mobile du site Web de monnaie virtuelle (les dix premiers recommandés au monde) Mar 04, 2025 pm 03:48 PM

Cet article compare et passe en revue neuf échanges de crypto-monnaie traditionnels dans OKX, Binance, Gate.io, Huobi, Kraken, Coinbase, Kucoin, Crypto.com et Bitstamp. L'article effectue une analyse détaillée et une comparaison de chaque échange à partir de plusieurs dimensions telles que les avantages techniques, le système de sécurité, l'innovation de produit, la mise en page mondiale, les progrès de la conformité, les frais, l'expérience utilisateur, l'écosystème, la position du marché, etc., visant à aider les utilisateurs à choisir la plate-forme qui convient le mieux à leurs besoins. OKX est célèbre pour son architecture distribuée et son échange de dérivés;

Top 10 des plateformes de trading d'applications de crypto-monnaie virtuelle en 2025 Top 10 des plateformes de trading d'applications de crypto-monnaie virtuelle en 2025 Mar 07, 2025 pm 06:39 PM

Les dix principales plates-formes de trading de crypto-monnaie en 2025 sont: 1. Lors du choix d'une plate-forme, vous devez considérer: 1. Sécurité;

Combien de fois Bitcoin a-t-il connu une plongeon dans l'histoire? Où échanger? Combien de fois Bitcoin a-t-il connu une plongeon dans l'histoire? Où échanger? Mar 12, 2025 pm 07:06 PM

Le prix du Bitcoin a connu de nombreuses fluctuations violentes de l'histoire, et plusieurs plongés ont causé de lourdes pertes aux investisseurs. Cet article passe en revue les nombreux plongeurs majeurs de Bitcoin depuis 2011, y compris la baisse de 85% causée par les pirates en 2011, la plongeon causée par l'incident du MT.GOX en 2013 et 2014, ainsi que les multiples baisses pointues causées par des facteurs tels que la période d'épidémie de 2017 à 2018 Le plongeon de 6,83% en février 2025, avec des pertes pouvant atteindre 2,21 milliards de dollars américains. Comprendre ces événements historiques aidera les investisseurs à mieux comprendre les risques du marché du bitcoin et faire

Analyse de la monnaie virtuelle la plus prometteuse en 2025 Top 10 de l'inventaire de la monnaie virtuelle potentielle en 2025 Analyse de la monnaie virtuelle la plus prometteuse en 2025 Top 10 de l'inventaire de la monnaie virtuelle potentielle en 2025 Feb 15, 2025 pm 05:51 PM

Le marché des devises virtuels évolue constamment et une croissance passionnante est attendue dans les années à venir. En 2025, certaines crypto-monnaies devraient se démarquer et devenir les investissements les plus prometteurs dans l'espace. Cet article analyse certaines des monnaies virtuelles les plus prometteuses en 2025, couvrant leurs capacités uniques, leurs potentiels de croissance et leurs possibilités qui ont un impact sur l'avenir. Ces devises comprennent Ethereum, Bitcoin, Cardano, Polkadot et Binance Coin, qui jouent un rôle clé dans le développement de la finance décentralisée, des contrats intelligents et des technologies de blockchain. Comprenant le potentiel de ces devises virtuelles, les investisseurs peuvent être prêts à saisir les opportunités apportées par le marché des devises virtuelles en 2025.

Le portail d'enregistrement officiel de TOP10 pour la plateforme de trading de devises Le portail d'enregistrement officiel de TOP10 pour la plateforme de trading de devises Mar 04, 2025 pm 09:00 PM

Le trading de devises est actuellement une méthode d'investissement populaire, et le choix de la bonne plate-forme est crucial. Cet article répertorie les 10 plateformes de trading de devises les plus reconnues dans l'industrie, offrant aux investisseurs un guide de référence complet. Ces plateformes sont connues pour leur sécurité supérieure, leurs capacités de trading pratiques et un large éventail d'options de crypto-monnaie. Cet article met en évidence les caractéristiques clés de chaque plateforme pour aider les investisseurs à prendre des décisions éclairées et à choisir la plate-forme qui convient le mieux à leurs besoins et à leurs stratégies d'investissement.

See all articles