zoukankan      html  css  js  c++  java
  • Codeforces Beta Round #75 (Div. 2 Only)

    Codeforces Beta Round #75 (Div. 2 Only)

    http://codeforces.com/contest/92

    A

     1 #include<iostream>
     2 using namespace std;
     3 #define lson l,mid,rt<<1
     4 #define rson mid+1,r,rt<<1|1
     5 #define sqr(x) ((x)*(x))
     6 #define maxn 100005
     7 typedef long long ll;
     8 typedef unsigned long long ull;
     9 const ull MOD=257;
    10 /*#ifndef ONLINE_JUDGE
    11         freopen("1.txt","r",stdin);
    12 #endif */
    13 
    14 
    15 
    16 int main(){
    17     #ifndef ONLINE_JUDGE
    18      //   freopen("1.txt","r",stdin);
    19     #endif
    20     std::ios::sync_with_stdio(false);
    21     int n,m;
    22     cin>>n>>m;
    23     int i=0;
    24     while(i+1<=m){
    25         m-=i+1;
    26         i++;
    27         if(i==n) i%=n;
    28     }
    29     cout<<m<<endl;
    30 }
    View Code

    B

    模拟+找规律

     1 #include<iostream>
     2 using namespace std;
     3 #define lson l,mid,rt<<1
     4 #define rson mid+1,r,rt<<1|1
     5 #define sqr(x) ((x)*(x))
     6 #define maxn 100005
     7 typedef long long ll;
     8 typedef unsigned long long ull;
     9 const ull MOD=257;
    10 /*#ifndef ONLINE_JUDGE
    11         freopen("1.txt","r",stdin);
    12 #endif */
    13 
    14 ///1
    15 
    16 int main(){
    17     #ifndef ONLINE_JUDGE
    18      //   freopen("1.txt","r",stdin);
    19     #endif
    20     std::ios::sync_with_stdio(false);
    21     string str;
    22     cin>>str;
    23     if(str=="1"){
    24         cout<<0;
    25         return 0;
    26     }
    27     int ans=0;
    28     for(int i=str.length()-1;i>=0;i--){
    29         if(str[i]=='1'&&i==0) break;
    30         if(str[i]=='1'){
    31             ans+=2;
    32             int l=i;
    33             while(l>=0&&str[l]=='1'){
    34                 str[l]='0';
    35                 l--;
    36             }
    37             if(l>=0) str[l]='1';
    38         }
    39         else{
    40             ans++;
    41         }
    42 
    43     }
    44     cout<<ans<<endl;
    45 }
    View Code

    C

    二分

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 #define lson l,mid,rt<<1
     4 #define rson mid+1,r,rt<<1|1
     5 #define sqr(x) ((x)*(x))
     6 #define pb push_back
     7 #define eb emplace_back
     8 #define maxn 1000006
     9 #define eps 1e-8
    10 #define pi acos(-1.0)
    11 #define rep(k,i,j) for(int k=i;k<j;k++)
    12 typedef long long ll;
    13 typedef pair<int,int> pii;
    14 typedef pair<char,int> pci;
    15 typedef pair<pair<int,string>,pii> ppp;
    16 typedef unsigned long long ull;
    17 /*#ifndef ONLINE_JUDGE
    18         freopen("1.txt","r",stdin);
    19 #endif */
    20 
    21 vector<int>ve[35];
    22 int book[35];
    23 
    24 int main(){
    25     #ifndef ONLINE_JUDGE
    26      //   freopen("1.txt","r",stdin);
    27     #endif
    28     std::ios::sync_with_stdio(false);
    29     string s1,s2;
    30     cin>>s1>>s2;
    31     int ans=1;
    32     for(int i=0;i<s1.length();i++){
    33         ve[s1[i]-'a'].pb(i);
    34     }
    35     int pos=-1;
    36     int x,tmp;
    37     for(int i=0;i<s2.length();i++){
    38         x=s2[i]-'a';
    39         if(ve[x].size()==0){
    40             cout<<-1<<endl;
    41             return 0;
    42         }
    43         tmp=lower_bound(ve[x].begin(),ve[x].end(),pos+1)-ve[x].begin();
    44         if(tmp!=ve[x].size()){
    45             pos=ve[x][tmp];
    46         }
    47         else{
    48             ans++;
    49             pos=lower_bound(ve[x].begin(),ve[x].end(),0)-ve[x].begin();
    50             pos=ve[x][pos];
    51         }
    52      //   cout<<tmp<<" "<<pos<<" "<<ans<<endl;
    53       //  cout<<pos<<endl;
    54     }
    55     cout<<ans<<endl;
    56 }
    View Code

    D

    线段树

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 #define lson l,mid,rt<<1
     4 #define rson mid+1,r,rt<<1|1
     5 #define sqr(x) ((x)*(x))
     6 #define pb push_back
     7 #define eb emplace_back
     8 #define maxn 100005
     9 #define eps 1e-8
    10 #define pi acos(-1.0)
    11 #define rep(k,i,j) for(int k=i;k<j;k++)
    12 typedef long long ll;
    13 typedef pair<int,int> pii;
    14 typedef pair<char,int> pci;
    15 typedef pair<pair<int,string>,pii> ppp;
    16 typedef unsigned long long ull;
    17 /*#ifndef ONLINE_JUDGE
    18         freopen("1.txt","r",stdin);
    19 #endif */
    20 
    21 int a[maxn];
    22 int tree[maxn<<3];
    23 int n;
    24 
    25 void push_up(int rt){
    26     tree[rt]=min(tree[rt<<1],tree[rt<<1|1]);
    27 }
    28 
    29 void build(int l,int r,int rt){
    30     if(l==r){
    31         tree[rt]=a[l];
    32         return;
    33     }
    34     int mid=l+r>>1;
    35     build(lson);
    36     build(rson);
    37     push_up(rt);
    38 }
    39 
    40 int query(int L,int R,int v,int l,int r,int rt){
    41     if(l==r&&L<=l&&R>=r){
    42         return l;
    43     }
    44     int mid=l+r>>1;
    45     if(L<=mid&&tree[rt<<1]<v){
    46         return query(L,R,v,lson);
    47     }
    48     else if(R>mid&&tree[rt<<1|1]<v){
    49         return query(L,R,v,rson);
    50     }
    51     return -1;
    52 }
    53 
    54 int main(){
    55     #ifndef ONLINE_JUDGE
    56      //   freopen("1.txt","r",stdin);
    57     #endif
    58     std::ios::sync_with_stdio(false);
    59     cin>>n;
    60     for(int i=n;i>=1;i--) cin>>a[i];
    61     build(1,n,1);
    62     int pos;
    63     vector<int>ans;
    64     for(int i=1;i<=n;i++){
    65         pos=query(1,i,a[i],1,n,1);
    66         if(pos==-1) ans.pb(pos);
    67         else ans.pb(i-pos-1);
    68     }
    69     reverse(ans.begin(),ans.end());
    70     for(int i=0;i<ans.size();i++) cout<<ans[i]<<" ";
    71 }
    View Code

    E

    并查集

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 #define lson l,mid,rt<<1
     4 #define rson mid+1,r,rt<<1|1
     5 #define sqr(x) ((x)*(x))
     6 #define pb push_back
     7 #define eb emplace_back
     8 #define maxn 100005
     9 #define eps 1e-8
    10 #define pi acos(-1.0)
    11 #define rep(k,i,j) for(int k=i;k<j;k++)
    12 typedef long long ll;
    13 typedef pair<int,int> pii;
    14 typedef pair<char,int> pci;
    15 typedef pair<pair<int,string>,pii> ppp;
    16 typedef unsigned long long ull;
    17 const long long MOD=1e9+9;
    18 /*#ifndef ONLINE_JUDGE
    19         freopen("1.txt","r",stdin);
    20 #endif */
    21 
    22 int n,m;
    23 int fa[100005];
    24 
    25 int Find(int x){
    26     int r=x,y;
    27     while(x!=fa[x]) x=fa[x];
    28     while(r!=x){
    29         y=fa[r];
    30         fa[r]=x;
    31         r=y;
    32     }
    33     return x;
    34 }
    35 
    36 int main(){
    37     #ifndef ONLINE_JUDGE
    38      //   freopen("1.txt","r",stdin);
    39     #endif
    40     std::ios::sync_with_stdio(false);
    41     cin>>n>>m;
    42     int x,y,xx,yy;
    43     ll ans=1;
    44     for(int i=0;i<=n;i++) fa[i]=i;
    45     for(int i=0;i<m;i++){
    46         cin>>x>>y;
    47         xx=Find(x),yy=Find(y);
    48         if(xx==yy){
    49             ans=(ans+ans)%MOD;
    50         }
    51         else fa[xx]=yy;
    52         cout<<ans-1<<endl;
    53     }
    54 
    55 }
    View Code
  • 相关阅读:
    数据挖掘十大经典算法
    280行代码:Javascript 写的2048游戏
    o​r​a​l​c​e​ ​D​B​A​ ​培​训_lesson06
    Word2007怎样从随意页開始设置页码 word07页码设置毕业论文
    iOS图片模糊效果
    linux(Ubuntu)安装QQ2013
    [iOS翻译]《The Swift Programming Language》系列:Welcome to Swift-01
    【体系结构】转移预测器性能的定量评价
    Java实现 蓝桥杯VIP 算法提高 P0402
    Java实现 蓝桥杯VIP 算法提高 P0402
  • 原文地址:https://www.cnblogs.com/Fighting-sh/p/10504623.html
Copyright © 2011-2022 走看看