5 条题解

  • 1
    @ 2026-4-11 15:52:35
    #include<bits/stdc++.h>
    using namespace std;
    int n,m,b,a[2005],tmp;
    int main(){
    	cin>>n;
    	for(int i=1;i<=n;i++)
    		cin>>a[i];
    	cin>>m;
    	for(int i=1;i<=n;i++){
    		if(a[i]==m){
    			tmp=i;
    			break;
    		}
    	}
    	sort(a+1,a+n+1);
    	int l=0,r=n+1;
    	while(r-l>1){
    		int md=(r+l)>>1;
    		if(a[md]>=m)
    			r=md;
    		else
    			l=md;
    	}
    	for(int i=1;i<=n;i++)
    		cout<<a[i]<<" ";
    	cout<<endl;	
    	if(r<=n && a[r]==m)
    		cout<<tmp;
    	else
    		cout<<"Not Find";
    	return 0;
    }
    
    • 0
      @ 2026-8-15 10:56:52
      # include <bits/stdc++.h>
      
      using namespace std;
      const int N=1e6+5;
      struct num{
      	int id,sum;
      	bool operator<(const num&a)const{
      		return a.sum>sum;
      	}
      }a[N];
      int n,m,x,l,r,mid;
      int main(){
      	cin>>n;
      	for(int i = 1;i<=n;i++){
      		cin>>a[i].sum;a[i].id=i;
      	}
      	cin>>x;
      	l=0,r=n+1,mid=(l+r+1)/2;
      	sort(a+1,a+n+1);
      	while(r-l>1){
      		mid=(l+r+1)/2;
      		if(a[mid].sum<x)
      			l=mid;
      		else
      			r=mid;
      		if(a[mid].sum==x){
      			for(int i = 1;i<=n;i++)printf("%d ",a[i].sum);
      			cout<<"\n";
      			cout<<a[mid].id<<endl;
      			return 0;
      		}
      	}
      	for(int i = 1;i<=n;i++)printf("%d ",a[i].sum);
      	cout<<"\n"; 
      	cout<<"Not Find"<<endl;
      	return 0;
      }
      
      • 0
        @ 2022-9-24 16:07:27
        #include <iostream>
        #include <algorithm>
        using namespace std;
        int n, x;
        struct node
        {
        	int num,id;
        }a[1000010];
        int find(int num)
        {
        	int l = 0, r = n-1;
        	while (l <= r)
        	{
        		int mid = (l + r) / 2;
        		if (num == a[mid].num)
        			return a[mid].id;
        		else if (num < a[mid].num)
        			r = mid - 1;
        		else
        			l = mid + 1;
        	}
        	return -1;
        }
        bool cmp(node x, node y)
        {
        	return x.num < y.num;
        }
        int main()
        {
        	cin >> n;
        	for (int i = 0; i < n; i++)
        	{
        		cin >> a[i].num;
        		a[i].id = i+1;
        	}
        	sort (a, a + n,cmp);
        	cin >> x;
        	for (int i = 0; i < n; i++)
        	{
        		cout << a[i].num << " ";
        	}
        	cout << endl; 
        	int findnum = find(x);
        	if(findnum == -1)
        		cout << "Not Find";
        	else
        		cout << findnum << endl;
        }
        
        • -2
          @ 2025-7-17 10:33:20

          #include<bits/stdc++.h> using namespace std; int v[100005]; int main(){ int n; cin>>n; for(int i=1;i<=n;i++)cin>>v[i]; int q,ans=-1; cin>>q; sort(v+1,v+n+1); int l=1,r=n; while(l<=r){ int mid=(l+r)/2; if(v[mid]<q)l=mid+1; else if(v[mid]>q)r=mid-1; else ans=mid; } for(int i=1;i<=n;i++)cout<<v[i]<<" "; cout<<endl; if(ans==-1)cout<<"Not Find"; else cout<<ans; return 0; } TLE玄关求DALAO调

          • -2
            @ 2024-9-17 15:28:52
            /*
            int      %o/%lo(八进制) %d/%i/%ld/%li(十进制) %x/%lx(十六进制)[如标名为o/lo/d/i/lo/li/x/lx即输出为八进制/十进制/十六进制]
            longlong %lld
            float    %f/%e
            double   %lf/%le
            char     %c
            char[]   %s
            'a'=97
            'z'=122
            'A'=65
            'Z'=90
            '0'=48
            '9'=57
            */
            #include <iostream>
            #include <iomanip>
            #include <cmath>
            #include <cstdio>
            #include <cstring>
            #include <algorithm>
            #include <ctime>
            #include <limits>
            #include <assert.h>
            #include <stdlib.h>
            using namespace std;
            #define LL long long
            #define ull unsigned long long
            const int N=1e5+10;
            const int INF=0x3f3f3f3f;
            const double pi=3.1416;
            int n,m,ans;
            struct sb{
            	int x;
            	int id;
            }a[N];
            bool cmp(sb a1,sb a2){
            	return a1.x<a2.x;
            }
            int main(){
            	cin>>n;
            	for(int i=1;i<=n;i++){
            		cin>>a[i].x;
            		a[i].id=i;
            	}
            	cin>>m;
            	sort(a+1,a+n+1,cmp);
            	for(int i=1;i<=n;i++){
            		cout<<a[i].x<<" ";
            		if(a[i].x==m){
            			ans=a[i].id;
            		}
            	}
            	cout<<endl;
            	if(ans){
            		cout<<ans;
            	}else{
            		cout<<"Not Find";
            	}
            return 0;
            }
            
            • 1

            信息

            ID
            1564
            时间
            1000ms
            内存
            256MiB
            难度
            7
            标签
            递交数
            770
            已通过
            191
            上传者