zoukankan      html  css  js  c++  java
  • 洛谷模拟赛 答案错误

    题目背景

    小X比较差,她(她?tan90°)有许多WA掉的题,所以她很难受。小Z决定去安慰她,可是他的提交记录里一道WA都没有(flag),于是他决定篡改一半题的署名,让小X觉得他们的错题相当,这样她会好受一些

    题目描述

    每道WA了的题都会有一个分数,对于两个人的WA题程度是否相同,小X有这样一个评判方法:

    无聊的她想了这样一个神奇的函数

    image

    她认为,无论ai取什么值,两组f(x)的和都相等,则这两组题的错误程度很相似

    假如有分值为 A={1,4,6,7 } ,B={2,3,5,8} 的两份被篡改完成的WA题,当a_1=a_2=a_3=1a1=a2=a3=1时,神奇的函数为

    f(x)=x^2+x+1f(x)=x2+x+1

    那么,f(1)=3,f(2)=7,f(3)=13......f(1)=3,f(2)=7,f(3)=13......

    显然 f(1) + f(4) + f(6) + f(7) = 124 = f(2) + f(3) +f(5) +f(8)f(1)+f(4)+f(6)+f(7)=124=f(2)+f(3)+f(5)+f(8)

    对于这组系数,此分组方案是合法的,可以证明,a_iai取任意值,按照以上方案分组都满足条件(两组的f(x)f(x)和相同),不信可以手动枚举(_hua|ji_)

    所以,A={1,4,6,7 } ,B={2,3,5,8}就是一种合法的分组

    输入输出格式

    输入格式:

    第一行一个整数nn,代表有2^n2n道WA题,分值分别从11到2^n2n, n>=2n>=2 (emmm........满分是inf)

    第二行一个整数q,表示有q组询问

    最后一行q个整数,询问分值为x的WA题是谁的名字

    (因为小X比较菜,所以我们认为分值为1的WA题是属于她的)

    输出格式:

    一共q行,每行一个字符 ‘XX’ 或 ‘ZZ’ ,表示分值为x的WA题是谁的署名

    输入输出样例

    输入样例#1: 复制
    3
    2
    4 5
    输出样例#1: 复制
    X
    Z
    

    说明

    对于10%的数据,n<=4 , q<=10;

    对于40%的数据,n<=20 , q<=5000;

    对于100%的数据,n<=60 , q<=1000000;

    题解网址https://pan.baidu.com/s/1qYPuPjA

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 using namespace std;
     6 typedef long long lol;
     7 lol cnt,n,q;
     8 int main()
     9 {lol x,i;
    10 cin>>n;
    11     cin>>q;
    12     while (q--)
    13     {
    14         scanf("%lld",&x);
    15         x--;
    16         cnt=0;
    17         for (i=x;i;i-=(i&(-i))) cnt++;
    18         if (cnt%2) printf("Z
    ");
    19         else printf("X
    ");
    20     }
    21 }
  • 相关阅读:
    opensuse使用zypper安装软件
    补习系列(1)-springboot项目基础搭建课
    补习系列-springboot-使用assembly进行项目打包
    log4j2 使用纪要
    mongos-sharding连接池配置
    maven-代码风格检查工具
    mtools-你可能没用过的mongodb神器
    mongodb分布式集群搭建手记
    mongodb分片扩展架构
    mongodb副本集高可用架构
  • 原文地址:https://www.cnblogs.com/Y-E-T-I/p/7749720.html
Copyright © 2011-2022 走看看