스키마에듀 백준 3문제

2023. 3. 31. 17:04스키마에듀 c언어 수업

728x90

https://www.acmicpc.net/problem/2738

 

2738번: 행렬 덧셈

첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같

www.acmicpc.net

 

#include <stdio.h>

int main(void){

  int n, m, i=0, j=0;
  scanf("%d %d", &n, &m);
  int A[100][100]={0,};
  int B[100][100] = {0,};

  for(i=0;i<n;i++){
    for(j=0;j<m;j++){
      scanf("%d", &A[i][j]);
    }
  }

  for(i=0;i<n;i++){
    for(j=0;j<m;j++){
      scanf("%d", &B[i][j]);
    }
  }

  for(i=0;i<n;i++){
    for(j=0;j<m;j++){
      printf("%d ", A[i][j] + B[i][j]);
    }
    printf("\n");
  }

  return 0;
}

 

https://www.acmicpc.net/problem/10798

 

10798번: 세로읽기

총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’

www.acmicpc.net

 

#include <stdio.h>

int main(void) {

  int i = 0, j = 0;
  char letter[5][15] ={{0}};

  for (i = 0; i < 5; i++) {
    scanf("%s", letter[i]);
  }
  // [0,0]  [0,1]
  // [1,0]  [1,1]
  // [2,0]  [2,1]
  // [3,0]  [3,1]
  // [4,0]  [4,1]

  for (i = 0; i < 15; i++) {
    for (j = 0; j < 5; j++) {

      if (letter[j][i] == 0) {
        continue;
      } else {
        printf("%c", letter[j][i]);
      }
    }
  }

  return 0;
}

2차원배열 이용

 

https://www.acmicpc.net/problem/2563

 

2563번: 색종이

가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록

www.acmicpc.net

 

 

#include <stdio.h>  
int main() {
    int pan[100][100] = { 0, }; 
    int n, r, h;
    int cnt = 0;
    scanf("%d", &n);
    for (int i = 0; i < n; i++) {  
        scanf("%d %d", &r, &h);
        for (int m = 100 - (h + 10); m < 100 - h; m++) {
          
            for (int k = r; k < r + 10; k++) {
                pan[m][k] = 1;
            }
        }
    }
  
    for (int i = 0; i < 100; i++) { 
            for (int j = 0; j < 100; j++) {  
                if (pan[i][j] == 1)
                    cnt++;
            }
        }
        
  
    printf("%d", cnt);
    return 0;
}