코딩테스트 & 문제 풀이

[C]백준_2753 : 윤년

2023. 4. 11. 23:14

2022년 5월 8일에 작성됨

 

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

 

2753번: 윤년

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서

www.acmicpc.net

 

 

문제 분석

if문과 연산자를 사용하면 된다.
==(같다), %(나머지), &&(AND), ||(OR), !(NOT) 연산자를 잘 활용해주면 된다.

ex) 4의 배수 -> 4로 나누었을 때 나머지가 0 이다.

 

 

소스 코드(⭕)

#include <stdio.h>

int main(void)
{
	int y;

	scanf("%d", &y);

	if (y % 4 == 0 && (y % 400 == 0 || y % 100 != 0))
		printf("1");

	else
		printf("0");

	return 0;
}

 

코드 분석

연도가 4의 배수 && (400의 배수 || 100의 배수가 아님) 을 성립하면 1을 출력, 아니면 0을 출력해준다.

 

 

 

end

if문을 사용하지 않고도 할 수 있을까 궁금해졌다. 논리 연산자(&&, ||, !)를 사용하여 조건이 참이면 1, 거짓이면 0을 출력하

니까 그것을 이용해보자.

#include <stdio.h>

int main(void)
{
	int y;

	scanf("%d", &y);

	printf("%d", y % 4 == 0 && (y % 400 == 0 || y % 100 != 0));

	return 0;
}

 

결과는 성공!
if 문 없이 printf 만으로 간단하게 구해보았다.
이렇게 보니까 하나의 문제에서도 다양한 코드의 경우가 나올 수 있겠구나 느꼈다.
앞으로는 코드를 간단하게 줄일 수 있도록 노력해봐야겠다.

 

 

 

'코딩테스트 & 문제 풀이' 카테고리의 다른 글

[C]백준_2525 : 오븐 시계  (2) 2023.04.15
[C]백준_2884 : 알람 시계  (0) 2023.04.14
[C]백준_2480 : 주사위 세개  (1) 2023.04.06
[C]백준_7287 : 등록  (0) 2023.04.05
[C]백준_5554 : 심부름 가는 길  (0) 2023.04.04
  1. 문제 분석
  2. 소스 코드(⭕)
  3. 코드 분석
  4. end
'코딩테스트 & 문제 풀이' 카테고리의 다른 글
  • [C]백준_2525 : 오븐 시계
  • [C]백준_2884 : 알람 시계
  • [C]백준_2480 : 주사위 세개
  • [C]백준_7287 : 등록
Hicecream
Hicecream
Hicecream
Hicecream
Hicecream
전체
오늘
어제
  • 분류 전체보기 (203) N
    • 코딩테스트 & 문제 풀이 (159)
    • 동아리 활동 (8)
    • 외부 활동 (0)
    • 대학 과제 (3)
    • Git & Git Hub (5)
    • 코딩 프로젝트 (4)
    • 공부 메모 (18) N
    • 일상 (2)
    • 참고사항 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 수학
  • LV1
  • 문자열
  • BOJ
  • Silver 5
  • Bronze 2
  • 구현
  • Code up
  • 정렬
  • Bronze 1
  • programmers
  • C언어 기초 100제
  • Bronze 4
  • C
  • python
  • Bronze 3
  • Bronze 5
  • 사칙연산
  • Java
  • Silver 4

최근 댓글

최근 글

hELLO · Designed By 정상우.
Hicecream
[C]백준_2753 : 윤년
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.