[Codeforces] 231A Team 풀이 코드 (C/C++/Java /Python)

문제 해설

Difficulty : *1000 (Math)

세 변수 중 두 개 이상 1일 경우를 모두 카운트하여 출력하는 문제입니다.

풀이

첫째줄에 테스트 케이스 개수가 주어지고 해당 수만큼 반복하여 세 변수가 입력됩니다. 각 줄마다 1이 두 개 이상이면 출력할 수를 1씩 증가시키고 마지막에 출력합니다.


코드

C

#include <stdio.h>
 
int main (){
    int n, i, a, b, c, sum = 0;
    scanf("%d", &n);
    
    for(i = 0; i < n; i++){
        scanf("%d %d %d", &a, &b, &c);
        if(a==1){
            if(b==1 || c==1){
                sum++;
            }
        }
        else if(b==1 && c==1){
            sum++;
        }
    }
    printf("%d", sum);
    return 0;
}

C++

#include <iostream>

int main() {
    int n, sum = 0;
    bool a, b, c;
    std::cin >> n;
    
    for(int i = 0; i < n; i++){
        std::cin >> a >> b >> c;
        if((a && b) || (b && c) || (c && a)){
            sum++;
        }
    }
    
    std::cout << sum;
    return 0;
}

Java

import java.util.Scanner;

public class Main{

     public static void main(String []args){
        int n, sum = 0;
        boolean a, b, c;
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        
        for(int i = 0; i < n; i++){
            a = (sc.nextInt() != 0);
            b = (sc.nextInt() != 0);
            c = (sc.nextInt() != 0);
            if((a && b) || (b && c) || (c && a)){
                sum++;
            }
        }
        System.out.println(sum);
     }
}

Python

n = int(input())
sum = 0
for i in range(n):
    a, b, c = map(int, input().split())
    if (a and b) or (b and c) or (c and a):
        sum += 1
print(sum)

문제 출처

https://codeforces.com/contest/231/problem/A

Related posts

블로그 이사

[Codeforces] 50A Domino piling 풀이 코드 (C/C++/Java /Python)

[Codeforces] 1538B Friends and Candies 풀이 코드 (C/C++/Java /Python)