[伯俊]7568番ブロック
白駿7568ブロック
質問する
質問url:https://www.acmicpc.net/problem/7568
問題を理解する
入力を比較することで、現在の自分のブロックの順序を決定する問題.
スタイルを比較する基準は体重と身長です.体重と身長の2つのうち1つだけ大きいと、大きな塊ではなく、比較できないので、同じ塊で評価します.
c++のpairを練習する良い問題です.
入力と出力
トラブルシューティング方法
最初の入力でいくつかのブロックを比較し、残りの入力はfor文でvector pairで入力します.
次に2つのfor文を用いてvector内で自分の体重と身長の2つとも大きい数を計算する方法でブロックをランキングします.
コード実装(C++)
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
int num;
scanf("%d",&num);
vector<pair<int,int> >v(num);
int n1,n2;
for(int i = 0 ; i < num; i++){
scanf("%d %d",&n1,&n2);
v[i].first = n1;
v[i].second = n2;
}
for(int i = 0 ; i < num; i++){
int rank = 1;
for(int j = 0; j < num; j++){
if(v[i].first < v[j].first && v[i].second < v[j].second){
rank++;
}
}
printf("%d ",rank);
}
return 0;
}
Reference
この問題について([伯俊]7568番ブロック), 我々は、より多くの情報をここで見つけました
https://velog.io/@kpg0518/백준-7568번-덩치
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
int num;
scanf("%d",&num);
vector<pair<int,int> >v(num);
int n1,n2;
for(int i = 0 ; i < num; i++){
scanf("%d %d",&n1,&n2);
v[i].first = n1;
v[i].second = n2;
}
for(int i = 0 ; i < num; i++){
int rank = 1;
for(int j = 0; j < num; j++){
if(v[i].first < v[j].first && v[i].second < v[j].second){
rank++;
}
}
printf("%d ",rank);
}
return 0;
}
Reference
この問題について([伯俊]7568番ブロック), 我々は、より多くの情報をここで見つけました https://velog.io/@kpg0518/백준-7568번-덩치テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol