13
NEED HELP : WA (CSES)
source link: http://codeforces.com/blog/entry/106127
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
HELo GUts hand girlS me NOw HAVE pROBLem WIth THS COde FOR CSes>fi
THIS is THE oRBLEMOSo : https://cses.fi/problemset/task/1068
(VeRY exTREme HArdn probleM (GM-LGM LEvel) oNLY for PRos)
THIS is The CODE fOR SOlvING : // #define ONLINE_JUDGE 69
#include <bits/stdc++.h> #include <chrono> using namespace std; using ll = long long; using ull = unsigned long long; using ld = long double; // Macros #define int long long // #define ll long long #define ld long double #define vt vector #define vi vector<int> #define vvi vector<vi> #define vii vector<pair<int,int>> #define pok(ok) print(ok ? "YES" : "NO"); #define pii pair<int,int> // Constants constexpr ll SZ = 2e5 + 7; constexpr ll inf = 9e18; constexpr ll mod = 1e9 + 7; constexpr ll MOD = 998244353; constexpr ld PI = 3.141592653589793238462; const ld scale = 1e6; #define pb push_back #define em emplace_back #define all(X) (X).begin(), (X).end() #define allr(X) (X).rbegin(), (X).rend() #define sz(X) (int)X.size() #define each(x, a) for (auto &x: a) #define forn(i, n) for (int i = 0; i < n; ++i) #define forr(i, n) for (int i = n; i >=0; --i) #define rep(i,a,b) for(int i = a; (a <= b ? i <= b : i >= b); (a <= b ? i++ : i--)) // #define repr(i,a,b) for(int i = a; i >= b; i--) #define fi first #define se second #define Endl '\n' #define setbits(X) __builtin_popcountll(X) #define fix(X) fixed << setprecision(X) #define mem0(X) memset((X), 0, sizeof((X))) #define mem1(X) memset((X), -1, sizeof((X))) // Debug macro string to_string(string s){return '"'+s+'"';} string to_string(const char* s){return to_string((string)s);} string to_string(const bool& b){return(b?"true":"false");} template<class T>string to_string(T x){ostringstream sout;sout<<x;return sout.str();} template<class A,class B>string to_string(pair<A,B> p){return "("+to_string(p.first)+", "+to_string(p.second)+")";} template<class A>string to_string(const vector<A> v){ int f=1;string res="{";for(const auto x:v){if(!f)res+= ", ";f=0;res+=to_string(x);}res+="}"; return res; } template<class A>string to_string(const set<A> v){ int f=1;string res="{";for(const auto x:v){if(!f)res+= ", ";f=0;res+=to_string(x);}res+="}"; return res; } template<class A, class B>string to_string(const map<A, B> v){ int f=1;string res="{";for(const auto x:v){if(!f)res+= ", ";f=0;res+=to_string(x);}res+="}"; return res; } template<class A>string to_string(const multiset<A> v){ int f=1;string res="{";for(const auto x:v){if(!f)res+= ", ";f=0;res+=to_string(x);}res+="}"; return res; } void debug_out(){puts("");} template<class T,class... U>void debug_out(const T& h,const U&... t){cerr<<" "<<to_string(h);debug_out(t...);} #ifndef ONLINE_JUDGE #define dbg(...) cerr<<"["<<#__VA_ARGS__<<"]:",debug_out(__VA_ARGS__),cerr<<"\n"; #else #define dbg(...) 233; #endif int modpow(int a, int b, int m = mod) { a = a % m; int ans = 1; while (b) { if (b & 1) { ans = (ans * a) % m; } b = b >> 1; a = (a * a) % m; } return ans; } // Inverse Mod (1 / a) % mod int modinv(int a, int m = mod) { return modpow(a, m - 2, m); } // Modular Arithematic int modadd(int a, int b, int m = mod) { a = a % m; b = b % m; return (((a + b) % m) + m) % m; } int modsub(int a, int b, int m = mod) { a = a % m; b = b % m; return (((a - b) % m) + m) % m; } int modmul(int a, int b, int m = mod) { a = a % m; b = b % m; return (((a * b) % m) + m) % m; } int moddiv(int a, int b, int m = mod) { a = a % m; b = b % m; return (modmul(a, modinv(b, m), m) + m) % m; } // GCD int gcd(int a, int b) { if (b == 0) { return abs(a); } return gcd(b, a % b); } // LCM int lcm(int a, int b) { return (a / gcd(a, b)) * b; } // Read template<typename T1, typename T2> // cin >> pair<T1, T2> istream& operator>>(istream &istream, pair<T1,T2> &p){ return (istream >> p.first >> p.second); } template<typename T> // cin >> vector<T> istream& operator>>(istream &istream, vector<T> &v){ for(auto &it: v) cin >> it; return istream; } // Print template<typename T1, typename T2> // cout << pair<T1, T2> ostream& operator<<(ostream &ostream, const pair<T1, T2> &p){ return (ostream << p.first << " " << p.second); } template<typename T> //cout << vector<T> ostream& operator<<(ostream &ostream, const vector<T> &c){ for (auto &it: c) cout << it << " "; return ostream;} // Utility functions template<typename T> void print(T &&t) {cout << t << Endl;} template <typename T, typename... Args> void print(T &&t, Args &&... args){ cout << t << " "; print(forward<Args>(args)...); } template<int M> struct modint { static int _pow(int n, int k) { int r = 1; for (; k > 0; k >>= 1, n = (n*n)%M) if (k&1) r = (r*n)%M; return r; } int v; modint(int n = 0) : v(n%M) { v += (M&(0-(v<0))); } friend string to_string(const modint n) { return to_string(n.v); } friend istream& operator>>(istream& i, modint& n) { return i >> n.v; } friend ostream& operator<<(ostream& o, const modint n) { return o << n.v; } template<typename T> explicit operator T() { return T(v); } friend bool operator==(const modint n, const modint m) { return n.v == m.v; } friend bool operator!=(const modint n, const modint m) { return n.v != m.v; } friend bool operator<(const modint n, const modint m) { return n.v < m.v; } friend bool operator<=(const modint n, const modint m) { return n.v <= m.v; } friend bool operator>(const modint n, const modint m) { return n.v > m.v; } friend bool operator>=(const modint n, const modint m) { return n.v >= m.v; } modint& operator+=(const modint n) { v += n.v; v -= (M&(0-(v>=M))); return *this; } modint& operator-=(const modint n) { v -= n.v; v += (M&(0-(v<0))); return *this; } modint& operator*=(const modint n) { v = (v*n.v)%M; return *this; } modint& operator/=(const modint n) { v = (v*_pow(n.v, M-2))%M; return *this; } friend modint operator+(const modint n, const modint m) { return modint(n) += m; } friend modint operator-(const modint n, const modint m) { return modint(n) -= m; } friend modint operator*(const modint n, const modint m) { return modint(n) *= m; } friend modint operator/(const modint n, const modint m) { return modint(n) /= m; } modint& operator++() { return *this += 1; } modint& operator--() { return *this -= 1; } modint operator++(signed) { modint t = *this; return *this += 1, t; } modint operator--(signed) { modint t = *this; return *this -= 1, t; } modint operator+() { return *this; } modint operator-() { return modint(0) -= *this; } // O(logk) modular exponentiation modint pow(const int k) const { return k < 0 ? _pow(v, M-1-(-k%(M-1))) : _pow(v, k); } modint inv() const { return _pow(v, M-2); } }; // in case of error remove ++ to += 1 using modi = modint<998244353>; using modx = modint<(int)1e9+7>; int accumulate(vi &a, function<int(int,int)> op = [] (int x, int y) {return x+y;}){ if(sz(a) == 0) return 0; int ans = a[0]; for(int i = 1; i < sz(a); i++) ans = op(ans, a[i]); return ans; } int MSB(int n){ int i = 0; while(n){ i++; n >>= 1; } i--; return i; } int nc2(int x){ if(x <= 1) return 0; else return (x*(x-1))/2; } int ceil(int x, int y){ if(x >= 0) return (x+y-1)/y; else return x/y; } const int N = 2e5+5; // vector<int> prime(N+1, true); // vector<modi> fact(N+10); // vi primes; void preSolve(){ // prime[0] = prime[1] = false; // for(int i = 2; i <= N; i++){ // if(prime[i]){ // for(int j = 2*i; j <= N; j += i){ // prime[j] = 0; // } // } // } // rep(i,1,N) if(prime[i]) primes.pb(i); // fact[0] = 1; // for(int i = 1; i <= N; i++) fact[i] = fact[i-1]*i; } int n = -inf, m = -inf; vector<vector<int>> adj; vector<bool> vis; bool cmp(pair<int,int> a, pair<int,int> b){ if(a.first != b.first) return a.first < b.first; return a.second > b.second; } // modi ncr(int n, int r){ // if(r < 0 || r > n) return 0; // return fact[n]/(fact[r]*fact[n-r]); // } // modi npr(int n, int r){ // if(r < 0 || r > n) return 0; // return fact[n]/fact[n-r]; // } void solve(){ int ans; cin >> ans; while (abns != 1){ print(ans); if (ans&1) ans /=2; else ans = ans*3-1; } } signed main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); auto start = std::chrono::system_clock::now(); #endif preSolve(); int t = 1; cin >> t; rep(tt, 1,t){ // dbg(t); // cout << "Case #" << tt << ": "; solve(); #ifndef ONLINE_JUDGE auto end = std::chrono::system_clock::now(); std::cerr << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() << "ms" << Endl; #endif } #ifndef ONLINE_JUDGE auto end = std::chrono::system_clock::now(); std::cerr << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() << "ms" << Endl; #endif } /* stuff you should look for * constraints * int overflow, array bounds * special cases (n=1, n = 0?) * do smth instead of nothing and stay organized * WRITE STUFF DOWN * DON'T GET STUCK ON ONE APPROACH */
why code no do the work?
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK