티스토리 뷰
6064번: 카잉 달력
입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성된다.
www.acmicpc.net
[잡담]
더보기
정수론 공부의 필요성을 느껴 유투브 보면서 기초부터 공부하고있다.
모듈러 기초연산부터 페르마 소정리, 중국인의 나머지 정리, 뤼카의 정리등 처음볼때는 전혀 이해가 안갔지만
이항계수 정리등 블로그로 부족한 개념을 채우다 보니 어느정도 이해하게 되었다.
지금이라도 수학공부를 꾸준히 해놔야겠다.
[코드]
더보기
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
tuple<int,int,int> extended_euclidean(int a, int b)
{
if(b == 0) return make_tuple(a,1,0);
int g, x, y;
tie(g, x, y) = extended_euclidean(b, a%b);
return make_tuple(g, y, x-(a/b)*y);
}
int main()
{
ios_base::sync_with_stdio(0), cin.tie(0);
int TC;
cin >> TC;
while(TC--){
int M, N, x, y;
cin >> M >> N >> x >> y;
int g, x0, y0;
tie(g, x0, y0) = extended_euclidean(M, N);
if((x-y)%g != 0){
cout << -1 << '\n';
continue;
}
LL lcm = M*N/g;
LL ans = 1LL*(y-x)*x0/g*M + x;
ans %= lcm;
while(ans<0){
ans += lcm;
}
cout << ans << '\n';
}
return 0;
}
'백준 문제풀이' 카테고리의 다른 글
백준[baekjoon] 26518 (0) | 2022.12.26 |
---|---|
백준[baekjoon] 17142 (0) | 2021.05.09 |
백준[baekjoon] 2336 (0) | 2021.02.11 |
백준[baekjoon] 11333 (0) | 2021.02.11 |
백준[baekjoon] 8201 (0) | 2020.07.17 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ICPC 후기
- 초등부
- BOJ 27469
- 백준 2365
- pygame
- ndisplay
- C++게임
- 정보올림피아드
- 퀸 움직이기
- 백준
- 숫자판 만들기
- unreal enigne
- C++게임개발
- 언리얼 프로젝트 재생성
- 백준 27469
- 테트리스
- BOJ 2365
- Python
- 언리얼 프로젝트 재생성 자동화
- OpenVDB
- Codeforces
- DP
- opengl
- UE5.3
- 브레젠험 알고리즘
- Unreal Engine
- 홍정모의 게임 만들기 연습 문제 패키지
- 언리얼 자동화
- tetris
- 코드포스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함