반응형
SMALL
이 문제는 swexpertacademy의 7102번 문제임을 알립니다.
N 과 M이 각 케이스마다 입력되는데 1~N, 1~M의 숫자를 더했을 때 확률이 가장 높은 숫자를 출력하므로 배열을 N+M+1칸으로 선언한다.
그 이유는 두개의 숫자를 더했을 때 나온 수의 배열 칸에 count++를 할 것인데 N, M, 을 2,3이라고 했을 때 arr[5]으로 선언하면
arr[0]~arr[4]까지 5개가 나오므로 편의를 위해 +1을 해준다.
그 후 가장 많이 등장한 숫자(들)을 출력한다.
#include<iostream>
#include<algorithm>
using namespace std;
int main(void){
int T;
cin>>T;
for(int i=1; i<=T; i++){
cout<<"#"<<i<<" ";
int N, M;
cin>>N>>M;
int set1[N];
int set2[M];
int arr[N+M+1];
//initialization
for(int j=0; j<N; j++){set1[j]=0;}
for(int j=0; j<M; j++){set2[j]=0;}
for(int j=0; j<N+M+1; j++){arr[j]=0;}
//등장횟수
for(int j=0;j<N; j++){
for(int k=0; k<M; k++){
arr[(j+1)+(k+1)]++;
}
}
int max=0;
//가장 등장 많이한 숫자 찾기
for(int a=0;a<N+M+1; a++){
if(arr[a]>=max) max=arr[a];
}
for(int b=0; b<N+M+1; b++){
if(arr[b]==max) cout<<b<<" ";
}
cout<<endl;
}
return 0;
}
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWkIlHWqBYcDFAXC
반응형
LIST
'코딩스터디' 카테고리의 다른 글
6808. 규영이와 인영이의 카드게임 (0) | 2019.05.13 |
---|---|
1206. [S/W 문제해결 기본] 1일차 - View (0) | 2019.05.13 |
7193. 승현이의 수학공부 (0) | 2019.05.12 |
Stack 배열로 구현 / C (0) | 2019.05.07 |
1222. [S/W 문제해결 기본] 6일차 - 계산기1 (0) | 2019.05.05 |