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

    Codeforces Beta Round #54 (Div. 2)

    http://codeforces.com/contest/58

    A

    找子序列

     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 1000005
     9 #define rep(k,i,j) for(int k=i;k<j;k++)
    10 typedef long long ll;
    11 typedef unsigned long long ull;
    12 
    13 
    14 int main(){
    15     #ifndef ONLINE_JUDGE
    16        // freopen("input.txt","r",stdin);
    17     #endif
    18     std::ios::sync_with_stdio(false);
    19     string str;
    20     string s="hello";
    21     cin>>str;
    22     int i=0,j=0;
    23     while(i<s.length()&&j<str.length()){
    24         if(s[i]==str[j]){
    25             i++,j++;
    26         }
    27         else{
    28             j++;
    29         }
    30     }
    31     if(i==s.length()){
    32         cout<<"YES"<<endl;
    33     }
    34     else cout<<"NO"<<endl;
    35 }
    View Code

    B

     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 1000005
     9 #define rep(k,i,j) for(int k=i;k<j;k++)
    10 typedef long long ll;
    11 typedef unsigned long long ull;
    12 
    13 
    14 int main(){
    15     #ifndef ONLINE_JUDGE
    16        // freopen("input.txt","r",stdin);
    17     #endif
    18     std::ios::sync_with_stdio(false);
    19     int n;
    20     cin>>n;
    21     for(int i=n;i>=1;i--){
    22         if(n%i==0){
    23             cout<<i<<" ";
    24             n=i;
    25         }
    26     }
    27 }
    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 1000005
     9 #define rep(k,i,j) for(int k=i;k<j;k++)
    10 typedef long long ll;
    11 typedef unsigned long long ull;
    12 
    13 int n;
    14 int a[100005];
    15 
    16 int main(){
    17     #ifndef ONLINE_JUDGE
    18        // freopen("input.txt","r",stdin);
    19     #endif
    20     std::ios::sync_with_stdio(false);
    21     cin>>n;
    22     int m;
    23     int ans=0;
    24     for(int i=1;i<=n;i++){
    25         cin>>m;
    26         int num=min(i,n-i+1);
    27         m-=num;
    28         if(m>=0){
    29             a[m]++;
    30             ans=max(ans,a[m]);
    31         }
    32     }
    33     cout<<n-ans<<endl;
    34 
    35 }
    View Code

    D

    在每个字符串后面加上字符d,然后sort+贪心即可

     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 1000005
     9 #define rep(k,i,j) for(int k=i;k<j;k++)
    10 typedef long long ll;
    11 typedef unsigned long long ull;
    12 
    13 int n;
    14 string str[20004];
    15 int book[20004];
    16 string ans[20004];
    17 string d;
    18 
    19 int main(){
    20     #ifndef ONLINE_JUDGE
    21        // freopen("input.txt","r",stdin);
    22     #endif
    23     std::ios::sync_with_stdio(false);
    24     cin>>n;
    25     int sum=0;
    26     for(int i=1;i<=n;i++){
    27         cin>>str[i];
    28         sum+=str[i].length();
    29     }
    30     cin>>d;
    31     for(int i=1;i<=n;i++){
    32         str[i]+=d;
    33     }
    34     sum+=n/2;
    35     int len=sum/(n/2);
    36     int co=1;
    37     sort(str+1,str+n+1);
    38     for(int i=1;i<=n;i++){
    39         if(!book[i]){
    40             ans[co]=str[i];
    41             book[i]=1;
    42             for(int j=1;j<=n;j++){
    43                 if(!book[j]&&str[i].length()-1+str[j].length()==len){
    44                     ans[co]+=str[j].substr(0,str[j].length()-1);
    45                     book[j]=1;
    46                     co++;
    47                     break;
    48                 }
    49             }
    50         }
    51     }
    52     for(int i=1;i<co;i++){
    53         cout<<ans[i]<<endl;
    54     }
    55 }
    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 1000005
     9 #define rep(k,i,j) for(int k=i;k<j;k++)
    10 typedef long long ll;
    11 typedef unsigned long long ull;
    12 
    13 ll ans1,ans2;
    14 ll p[15];
    15 ll ans=13;
    16 void dfs(ll a,ll b,ll c,ll ra,ll rb, ll jw, ll inc,ll d){
    17     if(inc>=ans) return;
    18     if(!a&&!b&&!c&&!jw){
    19         ans=inc;ans1=ra;ans2=rb;return;
    20     }
    21     if(!c){
    22         ll s=a+b+jw;
    23         int k=0;
    24         while(s){
    25             s/=10;
    26             k++;
    27         }
    28         dfs(0,0,0,a*p[d]+ra,b*p[d]+rb,0,inc+k,d);
    29         return;
    30     }
    31     if((a+b+jw)%10==c%10){
    32         dfs(a/10,b/10,c/10,a%10*p[d]+ra,b%10*p[d]+rb,(a%10+b%10+jw)/10,inc,d+1);
    33     }
    34     else{
    35         dfs(a*10+(c+10-b%10-jw)%10,b,c,ra,rb,jw,inc+1,d);
    36         dfs(a,b*10+(c+10-a%10-jw)%10,c,ra,rb,jw,inc+1,d);
    37         dfs(a,b,c*10+(a+b+jw)%10,ra,rb,jw,inc+1,d);
    38     }
    39 }
    40 
    41 
    42 int main(){
    43     #ifndef ONLINE_JUDGE
    44        // freopen("input.txt","r",stdin);
    45     #endif
    46     std::ios::sync_with_stdio(false);
    47     ll a,b,c;
    48     char ch;
    49     cin>>a>>ch>>b>>ch>>c;
    50     p[0]=1;
    51     for(int i=1;i<=13;i++) p[i]=p[i-1]*10;
    52     dfs(a,b,c,0,0,0,0,0);
    53     cout<<ans1<<"+"<<ans2<<"="<<ans1+ans2<<endl;
    54 }
    View Code
  • 相关阅读:
    git rebase命令
    java中HashSet对象内的元素的hashCode值不能变化
    Spring中WebApplicationInitializer的理解
    mysql判断表字段或索引是否存在,然后修改
    mysql存储过程
    判断地图上的点是否在圆形,多边形,区域内
    计算任意多边形的面积、中心、重心
    判断点是否在任意多边形内
    springMvc将对象json返回时自动忽略掉对象中的特定属性的注解方式
    String.format()详细用法
  • 原文地址:https://www.cnblogs.com/Fighting-sh/p/10429890.html
Copyright © 2011-2022 走看看