洛谷P 3955図書管理者【民間データ】
4224 ワード
P 3955図書管理者【民間データ】
テーマの背景
データが再修正されました
(あなたたちが0をリードしない以上、私は削除します)
タイトルの説明
図書館には本ごとに図書コードがあり、図書を迅速に検索するために使用することができます.この図書コードは正の整数です.本を借りた読者一人一人の手には需要コードがあり、この需要コードも正の整数です.もし1冊の本の図書コードがちょうど読者の需要コードで終わるならば、この本はこの読者が必要とするものです.Dさんは図書館の管理人になったばかりで、彼女は図書館のすべての本の図書のコードを知っていて、彼女はあなたにプログラムを書いてもらって、すべての読者に対して、彼の必要な本の中で図書のコードが一番小さい本を求めて、もし彼の必要な本がなければ、-1を出力してください.
にゅうしゅつりょくけいしき
入力形式:
入力ファイルの最初の行は、2つの正の整数nとqを含み、図書館の本の数と読者の数をそれぞれ表すスペースで区切られています.
次のn行は、各行に正の整数が含まれており、図書館のある本の図書コードを表しています.
次のq行は、各行に2つの正の整数を含み、1つのスペースで分けられ、1つ目の正の整数は図書館の読者の需要コードの長さを表し、2つ目の正の整数は読者の需要コードを表す.
出力フォーマット:
出力ファイルにはq行があり、各行には整数が含まれており、i番目の読者が必要とする本が存在する場合、i番目の読者が必要とする本の中で図書コードが最も小さい本の図書コードが出力され、そうでなければ-1が出力される.
入出力サンプル
入力サンプル#1:コピー5 5
2123
1123
23
24
24
2 23
3 123
3 124
2 12
2 12
出力サンプル#1:コピー23
1123
-1
-1
-1
説明
【データ規模と約束】
20%のデータに対して,1≦n≦2であった.
さらに20%のデータがあり、q=1です.
さらに20%のデータがあり、すべての読者の需要コードの長さは1である.
さらに20%のデータがあり、すべての図書コードは小さい順に与えられています.
100%のデータに対して、1≦n≦1000、1≦q≦1000であり、すべての図書符号化および需要符号は1000000を超えない.
考え方:暴力シミュレーション#include
#include
#include
#include
#include
using namespace std;
int n,m,pos,flag;
int book[1011],need[1011];
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
scanf("%d",&book[i]);
sort(book+1,book+1+n);
for(int i=1;i<=m;i++){
flag=0;
scanf("%d%d",&pos,&need[i]);
for(int j=1;j<=n;j++){
int x=pow(10,pos);
if(book[j]%x==need[i]){
cout<endl;
flag=1;break;
}
}
if(!flag) cout<<"-1"<<endl;
}
}
転載先:https://www.cnblogs.com/cangT-Tlan/p/7853259.html
(あなたたちが0をリードしない以上、私は削除します)
タイトルの説明
図書館には本ごとに図書コードがあり、図書を迅速に検索するために使用することができます.この図書コードは正の整数です.本を借りた読者一人一人の手には需要コードがあり、この需要コードも正の整数です.もし1冊の本の図書コードがちょうど読者の需要コードで終わるならば、この本はこの読者が必要とするものです.Dさんは図書館の管理人になったばかりで、彼女は図書館のすべての本の図書のコードを知っていて、彼女はあなたにプログラムを書いてもらって、すべての読者に対して、彼の必要な本の中で図書のコードが一番小さい本を求めて、もし彼の必要な本がなければ、-1を出力してください.
にゅうしゅつりょくけいしき
入力形式:
入力ファイルの最初の行は、2つの正の整数nとqを含み、図書館の本の数と読者の数をそれぞれ表すスペースで区切られています.
次のn行は、各行に正の整数が含まれており、図書館のある本の図書コードを表しています.
次のq行は、各行に2つの正の整数を含み、1つのスペースで分けられ、1つ目の正の整数は図書館の読者の需要コードの長さを表し、2つ目の正の整数は読者の需要コードを表す.
出力フォーマット:
出力ファイルにはq行があり、各行には整数が含まれており、i番目の読者が必要とする本が存在する場合、i番目の読者が必要とする本の中で図書コードが最も小さい本の図書コードが出力され、そうでなければ-1が出力される.
入出力サンプル
入力サンプル#1:コピー
5 5
2123
1123
23
24
24
2 23
3 123
3 124
2 12
2 12
出力サンプル#1:コピー
23
1123
-1
-1
-1
説明
【データ規模と約束】
20%のデータに対して,1≦n≦2であった.
さらに20%のデータがあり、q=1です.
さらに20%のデータがあり、すべての読者の需要コードの長さは1である.
さらに20%のデータがあり、すべての図書コードは小さい順に与えられています.
100%のデータに対して、1≦n≦1000、1≦q≦1000であり、すべての図書符号化および需要符号は1000000を超えない.
考え方:暴力シミュレーション
#include
#include
#include
#include
#include
using namespace std;
int n,m,pos,flag;
int book[1011],need[1011];
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
scanf("%d",&book[i]);
sort(book+1,book+1+n);
for(int i=1;i<=m;i++){
flag=0;
scanf("%d%d",&pos,&need[i]);
for(int j=1;j<=n;j++){
int x=pow(10,pos);
if(book[j]%x==need[i]){
cout<endl;
flag=1;break;
}
}
if(!flag) cout<<"-1"<<endl;
}
}
転載先:https://www.cnblogs.com/cangT-Tlan/p/7853259.html