天天看點

patA1048 Find coins 用散列進行優化

#include <iostream>

#include <cstdio> 

using namespace std;

const int maxn=10001;

int hashT[maxn]={0};

int main(int argc, char** argv) {

int n,m;

scanf("%d %d",&n,&m);

for(int i=0;i<n;i++){

int x;

scanf("%d",&x);

hashT[x]++;

}

bool flag=false;

for(int i=0;i<maxn;i++){

if(hashT[i] && hashT[m-i]){

if(i==m-i && hashT[i]>=2){

printf("%d %d",i,m-i);

flag=true;

break;

}

else if(i==m-i && hashT[i]==1) break;

else{

printf("%d %d",i,m-i);

flag=true;

break;

}

}

}

if(flag==false) printf("No Solution"); 

return 0;

}

patA1048 Find coins 用散列進行優化

繼續閱讀