首页 > 其他分享 >2024.09 别急记录

2024.09 别急记录

时间:2024-09-05 15:48:16浏览次数:9  
标签:return 别急 记录 int 2024.09 scanf 栈顶 好人

1. ARC070F - HonestOrUnkind

发现 \(a\leq b\) 时 \(b\) 内部可以构造出一个好人集合,一定无解;否则有两种情况:

  • \(x\) 认为 \(y\) 是坏人,二者一好一坏,全部删去即可;
  • \(x\) 认为 \(y\) 是好人,那么 \(y\) 一定比 \(x\) 更好。

维护一个栈表示目前越来越好的人,每次取出栈顶询问新人,若为好则将新人放入栈顶;否则将栈顶弹出。最后栈顶一定是一个好人,让他询问一遍所有人即可。

点击查看代码
//AT_arc070_d
#include <bits/stdc++.h>
using namespace std;

int qry(int x, int y){
    if(x == y){
        return 1;
    }
    printf("? %d %d\n", x, y);
    fflush(stdout);
    char s[4];
    scanf("%s", s);
    return s[0] == 'Y';
}
int st[4010];

int main(){
    int n, a, b;
    scanf("%d%d", &a, &b);
    if(a <= b){
        puts("Impossible");
        fflush(stdout);
        return 0;
    }
    n = a + b;
    int tp = 0;
    for(int i = 0; i < n; ++ i){
        if(tp == 0){
            st[++tp] = i;
        } else {
            if(qry(st[tp], i)){
                st[++tp] = i;
            } else {
                -- tp;
            }
        }
    }
    int x = st[tp];
    for(int i = 0; i < n; ++ i){
        st[i] = qry(x, i);
    }
    putchar('!');
    putchar(' ');
    for(int i = 0; i < n; ++ i){
        putchar(st[i] + '0');
    }
    puts("");
    return 0;
}

标签:return,别急,记录,int,2024.09,scanf,栈顶,好人
From: https://www.cnblogs.com/KiharaTouma/p/18398602/2024-09

相关文章

  • 快码住微信恢复聊天记录最简单方法
    微信紧密编织,不仅外界交流的窗口,更是情感与记忆的宝库。一次意外的手机故障,让着一场数据灾难——微信中的大量珍贵记录不翼而飞。那些记录着家人关爱、朋友欢笑和工作重要信息的对话,仿佛一夜之间被时光吞噬,只留下空洞的记忆轮廓,充满遗憾。下面我告诉大家这么快速恢复微信聊天记......
  • 我愿称为最好用的微信恢复聊天记录天花板
    人生的旅程中,微信聊天记录就像一个个小小的里程碑。它们记录着我们的成长、我们的喜怒哀乐。当这些记录消失,就好像我们的人生也缺失了一部分。别让这种失落感持续,我来教教大家怎么恢复聊天记录第一步打开手机上的浏览器苹果用户建议使用自带浏览器第二步在浏览器搜索栏......
  • 鸿蒙(HarmonyOS)北向开发知识点记录~
    北向开发的目标是为鸿蒙生态系统构建丰富多样的应用程序,满足用户在不同场景下的需求。通过北向开发,开发者可以充分利用鸿蒙操作系统的独特优势和强大功能,为用户带来全新的体验,同时也为自身创造更多的商业机会和价值。开发技术与特点1.分布式技术:鸿蒙操作系统的一大特色是......
  • 计算机毕业设计推荐-基于python的健康健身记录管理系统
    精彩专栏推荐订阅:在下方主页......
  • 网站提示“Duplicate entry:插入重复记录”错误如何解决
    当您遇到“Duplicateentry:插入重复记录”的错误时,这意味着您尝试向数据库中插入的数据违反了唯一性约束。这种情况通常发生在以下几种情形下:主键索引重复:尝试插入的记录的主键值与表中已有的主键值相同。唯一索引重复:如果表中有一个或多个列被定义为具有唯一约束的唯一索引,而......
  • Codeforces Round 947 (Div. 1 + Div. 2) VP记录
    CodeforcesRound947(Div.1+Div.2)VP记录我是唐诗,我是唐诗,我是唐。场切:ABCE。笑点解析D是我不在场的GJ模拟赛的T1签到题。A找\(a_i<a_{i-1}\)然后按数量分讨即可。B最小值要取,不能被最小值表示出来的数的最小值要取,暴力即可。C先对相邻两个值的较小......
  • 服务器 Debian 安装初使用一些设定记录
    通常拿到服务器root和密码后,我们进行一些安全首选项必备,开启BBR,注意Debian12默认支持BBR,只需要开启即可需要服务器内核支持uname-r//内核版本高于4.9就行。安装#一键开启echo-e"\nnet.core.default_qdisc=fq\nnet.ipv4.tcp_congestion_control=bbr">>......
  • SAP HCM 如何追踪Z表的日志修改记录
    导读INTRODUCTION日志记录:这几天遇到一个问题,就是查谁修改Z表的数据,因为HCM系统大部分都是信息类型,信息类型修改是有专门一套的处理机制,那么Z开头的表是不是也有追踪的一套机制。今天我们分析下如何开启Z表追踪修改记录。作者:vivi,来源:osinnovation。一、系统是否有追踪日志......
  • 先别急着夸华为 更炸裂的在后面
    文|琥珀食酒社作者|积溪你们都消停点吧更炸裂的还在后面上周华为不是披露了半年报吗?上半年销售收入4175亿元同比增长34.3%净利润551.1亿元全网那是“哇塞”一片部分见不得华为好的也开始阴阳怪气了今天我就来统一降降火你们都先别着急上半年华为还只是洒洒水等着年底华为放卫星吧......
  • 概期DP做题记录
    概期DPP3600考虑\(ans\in[1,x]\),那么有:\[\begin{aligned}E(ans)&=\sum_{i\in[1,x]}iP(ans=i)\\&=\sum_{i\in[1,x]}P(ans\geqi)\\&=\sum1-P(ans<i)\\&=x-\sumP(ans<i)\end{aligned}\]我们就只需要计......