zoukankan      html  css  js  c++  java
  • 【openjudge 1.11 07】和为给定数


    我看到这个的第一反应就是爆搜,然后写了一个没加$No$的4分程序

    #include <bits/stdc++.h>
    #include <algorithm>
    #define it int
    #define fr for
    #define il inline
    using namespace std;
    it book[100020],t[100020];
    it spe[50010];
    it n,m,bz=0;
    it main();
    it find();
    it max();
    it min();
    il it min(it a,it b){
        if(a>b){
            return b;
        }
        else{
            return a;
        }
    }
    il it max(it a,it b){
        if(a>b){
            return a;
        }
        else{
            return b;
        }
    }
    void print(it cho,it now){
        if(bz==0){ 
            printf("%d %d",t[cho],t[now]);
            bz=1; 
        } 
        return ;
    }
    it find(it cho,it now){
        it j=0; 
        book[cho]=1;
        if(t[cho]+t[now]==m){
            print(cho,now);
            return 0;
        }
        fr(it i=1;i<=n;i++){
            if(book[i]==0){
                book[i]=1;
                find(cho,i);
                book[i]=0;
            }
        }
        return 0;
    }
    it main(){
        scanf("%d",&n);
        fr(it i=1;i<=n;i++){
            book[i]=0;
            scanf("%d",&t[i]);
        }
        sort(t+1,t+1+n);
        scanf("%d",&m);
        fr(it i=1;i<=n;i++){
            find(i,0);
            if(bz==1){
                return 0;
            }
        }
        return 0;
    }
    4分垃圾


    然而很快发现自己没加$No$,于是机智地补上了

    #include <bits/stdc++.h>
    #include <algorithm>
    #define it int
    #define fr for
    #define il inline
    using namespace std;
    it book[100020],t[100020];
    it spe[50010];
    it n,m,bz=0;
    it main();
    it find();
    it max();
    it min();
    il it min(it a,it b){
        if(a>b){
            return b;
        }
        else{
            return a;
        }
    }
    il it max(it a,it b){
        if(a>b){
            return a;
        }
        else{
            return b;
        }
    }
    void print(it cho,it now){
        if(bz==0){ 
            printf("%d %d",t[cho],t[now]);
            bz=1; 
        } 
        return ;
    }
    it find(it cho,it now){
        it j=0; 
        book[cho]=1;
        if(t[cho]+t[now]==m){
            print(cho,now);
            return 0;
        }
        fr(it i=1;i<=n;i++){
            if(book[i]==0){
                book[i]=1;
                find(cho,i);
                book[i]=0;
            }
        }
        return 0;
    }
    it main(){
        scanf("%d",&n);
        fr(it i=1;i<=n;i++){
            book[i]=0;
            scanf("%d",&t[i]);
        }
        sort(t+1,t+1+n);
        scanf("%d",&m);
        fr(it i=1;i<=n;i++){
            find(i,0);
            if(bz==1){
                return 0;
            }
        }
        if(bz==0){
            printf("No");
        }
        return 0;
    }
    6分垃圾


    $mmp$怎么还是只有6分........................................................................

    这时我看到了这个练习的标题

    $1.11$编程基础之二分查找

    mmp


     然后就出来了...

    代码补充中~~~~~

  • 相关阅读:
    sql查询
    PHP常用的设计模式
    PHP内存管理和垃圾回收机制
    记一次面试
    获取py文件函数名及动态调用
    正确解决 mysql 导出文件 分隔符 问题
    解决ValueError: cannot convert float NaN to integer
    Python ---接口返回值中文编码问题
    pandas python 读取大文件
    【neo4J】后台关闭后,前端还能打开视图
  • 原文地址:https://www.cnblogs.com/Fraction/p/8097426.html
Copyright © 2011-2022 走看看