[contest 781] 9.6 - XJOI

czx的温暖题。。。

T1 军训

BShAAQpQgAIUoECVEmABUKVON5OlAAUoQAEKUIAC

INGlcIgAAAABJRU5ErkJggg==

那这非常水呀。。。

就是求一下(n^2-m)/n^2。

先把n,m读进来模一下然后逆元一下就好了。

code:

 #include<cstdio>
 #include<cstring>
 #include<algorithm>
 #include<iostream>
 #define LL long long
 using namespace std;
 ;
 LL n,m,ans;
 char ch;
 bool fl;
 inline LL Q_pow(LL b,LL p){
     ;
     ) return b%TT;
     LL t=Q_pow(b,p>>); t=(t*t)%TT;
     >) return (t*b)%TT;
     else return t;
 }
 int main(){
     n=m=fl=;
     while (scanf("%c",&ch)!=EOF){
         ; continue;}
         ') break;
         ) n=(n*+ch-')%TT;
         +ch-')%TT;
     }
     ans=(((n*n-m)%TT)*Q_pow((n*n)%TT,TT-))%TT;
     printf("%lld",ans%TT);
     ;
 }

T2 萌萌哒的小XC

6ZbIjIKAoKAICAICAKCgCAgCAgCgkC7BH5nHLDdc

S6enmNp5rCjxoyAgCAgClU5AOPlKRyoECgKCgCAg

主要要想到把原图中联通的且同色的构成一个联通块,然后随便抓一个节点,必定是隔一层节点换一种颜色。

事实上,我们只需要找出新图当中的(最长链的长度+1)/2就好了。

因为在一条颜色相间的链上面,需要(长度+1)/2次操作使其变成同色。

而我们知道,如果我们把原树看成无根树,最长链旁延伸出很多子树,但是由于最长链不通过这颗子树,所以这颗子树的操作次数一定小于在最长链上的操作次数。

code:

 #include<cstdio>
 #include<cstring>
 #include<algorithm>
 using namespace std;
 ;
 char cha;
 int n,a[N],fa[N],ret,ans,Mx,Mxi,sta;
 ],son[N*],lnk[N];
 ],sonn[N*],lnkn[N];
 bool vis[N];
 inline int read(){
     ; char ch=getchar();
     ') ch=getchar();
     +ch-',ch=getchar();
     return x;
 }
 void add(int x,int y){nxt[++tot]=lnk[x],son[tot]=y,lnk[x]=tot;}
 void addn(int x,int y){nxtn[++totn]=lnkn[x],sonn[totn]=y,lnkn[x]=totn;}
 int get(int x){return fa[x]==x?x:fa[x]=get(fa[x]);}
 void DFS(int x,int y,int d){
     if (Mx<d) Mx=d,Mxi=x;
     for (int j=lnkn[x]; j; j=nxtn[j])
         );
 }
 int main(){
     n=read(),tot=,ans=0x3f3f3f3f;
     ; i<=n; i++){
         while (scanf("%c",&cha))
             if (cha=='B'||cha=='R') break;
         a[i]=(cha=='R');
     }
     ; i<=n; i++) fa[i]=i;
     ; i<n; i++){
         int x=read(),y=read(),fx=get(x),fy=get(y);
         add(x,y),add(y,x);
         if (a[x]==a[y]) fa[fx]=fy;
     }
     ; i<=n; i++)
         for (int j=lnk[i]; j; j=nxt[j]){
             int x=get(i),y=get(son[j]);
             if (x!=y) addn(x,y);
         }
     ; i<=n; i++) get(i);
     memset(vis,,sizeof vis);
     ; i<=n; i++) vis[;
     sta=),Mx=;
     DFS(sta,,);
     DFS(Mxi,,);
     printf()>>);
     ;
 }

T3 真假雪菜

wArA9yO92c0VwAAAABJRU5ErkJggg==

X1VXFxsSoqKsZg7+xyOAJxcXFyfMaZEEBgdAI8Z3

3b6NhX3nqRH+6RWOCMb+PocEA8zxGiItpYqr4b6I

主思想当然是贪心,主要还是围绕着操作顺序一定是1,2,3。然后有些细节还不会证明。所以暂时先搁着。

难度不高,还是挺接近NOIP难度的。

[contest 781] 9.6的更多相关文章

  1. Codeforces 781D Axel and Marston in Bitland

    题目链接:http://codeforces.com/contest/781/problem/D ${F[i][j][k][0,1]}$表示是否存在从${i-->j}$的路径走了${2^{k}} ...

  2. Codeforces 781B. Innokenty and a Football League

    题目链接:http://codeforces.com/contest/781/problem/B 去tmd 2-SAT 直接贪心就可以过去了,优先选择第二种情况. 然而....可以被叉掉(数据水了) ...

  3. bitset在acm中的应用

    ps:最近碰到一些用bitset优化常数的题目,以前也有接触但是都没有记下来,所以来写一篇博文 记录以后碰到的类似的题目. 应用一: 优化boolean multiplication 在做dp的时候, ...

  4. bitset 位运算

    1. 判断一个数是否是2的方幂n > 0 && ((n & (n - 1)) == 0 ) 解释((n & (n-1)) == 0): 如果A&B==0, ...

  5. 2016 Multi-University Training Contest 6

    5/12 2016 Multi-University Training Contest 6 官方题解 打表找规律/推公式 A A Boring Question(BH) 题意: ,意思就是在[0,n] ...

  6. Programming Contest Problem Types

        Programming Contest Problem Types Hal Burch conducted an analysis over spring break of 1999 and ...

  7. hdu 4946 2014 Multi-University Training Contest 8

    Area of Mushroom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  8. 2016 Multi-University Training Contest 2 D. Differencia

    Differencia Time Limit: 10000/10000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  9. 2016 Multi-University Training Contest 1 G. Rigid Frameworks

    Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

随机推荐

  1. 良品铺子:“新零售”先锋的IT必经之路

    良品铺子:“新零售”先锋的IT必经之路 云计算 大数据 CIO班 CIO 互联网+ 物联网 电子政务 2017-12-29 09:25:34  来源:互联网抢沙发 摘要:2017年被称为“新零售”元年 ...

  2. Nginx教程---01.Nginx入门

    create by 三七二十一 LZ参考视频(年代久远,但万变不离其宗): 链接:https://pan.baidu.com/s/1O_MmN0c3ckM6vbk08n8Qkg 密码:z9zr 01_ ...

  3. Centos7:查看某个端口被哪个进程占用

    查看端口被哪个进程使用的命令 netstat -lnp | grep 参考: https://blog.csdn.net/u010886217/article/details/83626236 htt ...

  4. Python 模块(module)

    模块(module)也是为了同样的目的.在Python中,一个.py文件就构成一个模块.通过模块,你可以调用其它文件中的程序. first.py def laugh(): print "Ha ...

  5. Linux简单入门

    1.目录切换命令 cd usr 切换到该目录下usr目录 cd ../ 切换到上一层目录 cd / 切换到系统根目录 cd ~ 切换到用户主目录 cd - 切换到上一个所在目录 2.目录的操作命令 1 ...

  6. Pycharm设置去除显示的波浪线

    1.选择文件选择file—Settings,如下图打开setting对话框 2.选择Editur—Color Scheme—General选项,然后选择右边对话框中的Errors and Warnin ...

  7. @media only screen and (max-width:640px)中的问题,响应式布局

    <head> <meta charset="UTF-8"> <meta name="viewport" content=" ...

  8. Boostrap本地导入js文件

    我一般都是用CDN直接导入的,但是有时候需要自己添加一些功能进入,会用到本地导入.关于导入路径问题,做个笔记. 使用HBuilder,首先右键导入相应的js/cs文件 然后是常规——>文件系统 ...

  9. AtCoder Regular Contest 100 Equal Cut

    Equal Cut 思路: 枚举中间那个分界点,然后两边找使得切割后差值最小的点,这个可以用双指针 代码: #include<bits/stdc++.h> using namespace ...

  10. Python - requests https请求的坑

    #-*-coding:utf-8-*- # Time:2017/9/25 20:41 # Author:YangYangJun import requests import ssl from requ ...