• ACM ICPC 2017 Warmup Contest 2[菜鸡选手的成长]


    (队友去过节了 丢下我一个人单挑差点暴零,太菜了.....补题之路 路阻且长)

    A

    算是水题吧,直接找两个随便割一下,画下图就好....

    #include <bits/stdc++.h>
    using namespace std;
    typedef struct node{
        int x;int y;
    }node;
    node a[3];
    int main(){
       int n,m;
       scanf("%d%d",&n,&m);
       for(int i=1;i<=2;i++) scanf("%d%d",&a[i].x,&a[i].y);
       if(a[1].x==a[2].x){
         printf("%d %d %d %d
    ",0,a[1].y,n,a[2].y);
       }
       else{
            printf("%d %d %d %d
    ",a[1].x,0,a[2].x,m);
       }
       return 0;
    }

    K:按照题意模拟即可

    #include <bits/stdc++.h>
    using namespace std;
    typedef struct node{
        int x,y,z;int biao;
        friend bool operator<(node a,node b){
            if(a.z==b.z){
                if(a.y==b.y) return a.x>b.x;
                return a.y>b.y;
            }
            return a.z>b.z;
        }
    }node;
    node a[105];
    int main(){
        node t;
        cin>>t.x>>t.y>>t.z;
        int tt;cin>>tt;
        int ans=0;
        for(int i=1;i<=tt;i++) {cin>>a[i].x>>a[i].y>>a[i].z;a[i].biao=i;}
        sort(a+1,a+tt+1);
        for(int i=1;i<=tt;i++){
            if(a[i].z+18<t.z) {ans=a[i].biao;break;}
            else if(a[i].z+18==t.z){
                if(a[i].y<t.y) {ans=a[i].biao;break;}
                else if(a[i].y==t.y){
                    if(a[i].x<=t.x) {ans=a[i].biao;break;}
                }
            }
        }
        if(ans==0) cout<<"-1"<<endl;
        else cout<<ans<<endl;
       // cout<<ans<<endl;
        return 0;
    }

    F:折叠问题 看懂题 然后模拟...推一下

    #include <bits/stdc++.h>
    using namespace std;
    int main(){
        int x1,x2;int t1,t2;
        cin>>x1>>x2>>t1>>t2;
        if(x1<x2) swap(x1,x2);
        if(t1<t2) swap(t1,t2);
        if(x1<t1||x2<t2) cout<<"-1"<<endl;
        else{
            int ans=0;
            int xx1=x1;int xx2=x2;
            if(xx1!=t1){
            while(1){
                if(xx1&1){
                    if((xx1>>1)+1<=t1) {ans++;break;}
                    else {ans++;xx1=(xx1>>1)+1;}
                }
                else{
                    if((xx1>>1)<=t1) {ans++;break;}
                    else {ans++;xx1=(xx1>>1);}
                }
             }
          }
          if(xx2!=t2){
                while(1){
                if(xx2&1){
                    if((xx2>>1)+1<=t2) {ans++;break;}
                    else {ans++;xx2=(xx2>>1)+1;}
                }
                else{
                    if((xx2>>1)<=t2) {ans++;break;}
                    else {ans++;xx2=(xx2>>1);}
                }
             }
          }
          int ans1=0;swap(t1,t2);xx1=x1;xx2=x2;
                  if(xx1!=t1){
            while(1){
                if(xx1&1){
                    if((xx1>>1)+1<=t1) {ans1++;break;}
                    else {ans1++;xx1=(xx1>>1)+1;}
                }
                else{
                    if((xx1>>1)<=t1) {ans1++;break;}
                    else {ans1++;xx1=(xx1>>1);}
                }
             }
          }
          if(xx2!=t2){
                while(1){
                if(xx2&1){
                    if((xx2>>1)+1<=t2) {ans1++;break;}
                    else {ans1++;xx2=(xx2>>1)+1;}
                }
                else{
                    if((xx2>>1)<=t2) {ans1++;break;}
                    else {ans1++;xx2=(xx2>>1);}
                }
             }
          }
          ans=min(ans1,ans);
          cout<<ans<<endl;
        }
        return 0;
    }

    G:待补

  • 相关阅读:
    一些简单的逻辑题
    3种数据类型之间的转换
    搭建selenium + Python环境的总结:
    杂记
    Eclemma的安装
    LR----实现WebService测试
    LR--实现HTTP协议的接口测试
    Loadrunner---解决乱码问题
    selenium常用API实例
    JMeter中响应数据显示乱码问题解决
  • 原文地址:https://www.cnblogs.com/wang9897/p/7627085.html
Copyright © 2020-2023  润新知