結果
問題 | No.1544 [Cherry 2nd Tune C] Synchroscope |
ユーザー |
![]() |
提出日時 | 2021-06-11 22:22:47 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 1,388 ms / 2,000 ms |
コード長 | 2,128 bytes |
コンパイル時間 | 3,196 ms |
コンパイル使用メモリ | 169,260 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-12-15 00:29:32 |
合計ジャッジ時間 | 6,577 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 48 |
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:87:38: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions] 87 | auto [x,y] = crt({ii,jj},{n,m}); | ^
ソースコード
#include <cmath> #include <deque> #include <algorithm> #include <iterator> #include <list> #include <tuple> #include <map> #include <unordered_map> #include <queue> #include <set> #include <unordered_set> #include <stack> #include <string> #include <vector> #include <fstream> #include <iostream> #include <functional> #include <numeric> #include <iomanip> #include <stdio.h> #include <assert.h> #include <atcoder/all> //eolibraries #define lnf 3999999999999999999 #define inf 999999999 #define PI 3.14159265359 #define endl "\n" #define fi first #define se second #define pb push_back #define eb emplace_back #define ll long long #define all(c) (c).begin(),(c).end() #define sz(c) (int)(c).size() #define mkp(a,b) make_pair(a,b) #define make_unique(a) sort(all(a)),a.erase(unique(all(a)),a.end()) #define rsz(a,n) a.resize(n) #define pii pair <int,int> #define rep(i,n) for(int i = 0 ; i < n ; i++) #define drep(i,n) for(int i = n-1 ; i >= 0 ; i--) #define crep(i,x,n) for(int i = x ; i < n ; i++) #define vi vector <int> #define vec(...) vector<__VA_ARGS__> #define rsz(a,n) a.resize(n) #define rszv(a,n,v) a.resize(n,v) #define fcin ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0); //eodefine using namespace std; using namespace atcoder; const int max_n = 103002; // tuple <int,int,int> exc_gcd(int a , int b){ // if(b==0) { // return {1,0,a}; // }else{ // int x , y , g; // tie(x,y,g) = exc_gcd(b,a%b); // return {y , x - y*(a/b) , g}; // } // } // int gcd(int a,int b){ // return b==0?a:gcd(b,a%b); // } int n,m; vi a,b; int main(){ fcin; cin>>n>>m; rep(i,n){int x;cin>>x;a.pb(x);} rep(i,m){int x;cin>>x;b.pb(x);} ll ans=lnf; // auto [x,y] = crt({0,1},{n,m}); // cout<<x<<" "<<y<<"\n"; rep(i,n) { rep(j,m) { int ai=a[i],bj=b[j]; int ii=(i+1)%n,jj=(j+1)%m; if(ai==bj) { // if(gcd(n,m)%abs(jj-ii)!=0)continue; auto [x,y] = crt({ii,jj},{n,m}); // if(x==3)cout<<i<<" "<<j<<"\n"; if(y==0)continue; if(x==0)x+=y; ans=min(ans,x); } } } if(ans==lnf){ cout<<"-1\n"; }else{ cout<<ans<<"\n"; } /* */ return 0; }