Task: | Greater Integers |
Sender: | kasparovian |
Submission time: | 2021-01-31 08:20:25 +0200 |
Language: | C++ (C++17) |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 35 |
#2 | ACCEPTED | 65 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.01 s | 1, 2 | details |
#2 | ACCEPTED | 0.01 s | 2 | details |
Compiler report
input/code.cpp:7:4: warning: multi-line comment [-Wcomment] // (\=, //\\ )__( /_____\ ^ input/code.cpp:13:4: warning: multi-line comment [-Wcomment] // |__| )___( )___( /____\ /____\ /_____\ ^ input/code.cpp: In function 'int main()': input/code.cpp:122:9: warning: variable 'tab' set but not used [-Wunused-but-set-variable] int t,tab; ^~~ input/code.cpp: In function 'bool maxs(std::__cxx11::string)': input/code.cpp:80:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
Code
// '-.-'// () __.'.__// .-:--:-. |_______|// () \____/ \=====/// /\ {====} )___(// (\=, //\\ )__( /_____\// __ |'-'-'| // .\ ( ) /____\ | |// / \ |_____| (( \_ \ )__( | | | |// \__/ |===| )) `\_) /____\ | | | |// /____\ | | (/ \ | | | | | |// | | | | | _.-'| | | | | | |// |__| )___( )___( /____\ /____\ /_____\// (====) (=====) (=====) (======) (======) (=======)// }===={ }====={ }====={ }======{ }======{ }======={// (______)(_______)(_______)(________)(________)(_________)//// Credits :- Joan G. Stark//|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|//| AUTHOR - KASPAROVIAN |//|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|#include<bits/stdc++.h>#define rep(i,a,b) for(int i=(a);i<=(b);i++)#define per(i,a,b) for(int i=(a);i>=(b);i--)#define frr(i,n) for(int i=0;i<(n);i++)#define pb push_back#define eb emplace_back#define all(v) (v).begin(),(v).end()#define fr first#define sc second#define mk make_pair#define endl '\n'#define MOD 1000000007#define in insert#define sz(x) (ll)(x).size()#define mem(a,b) memset(a,b,sizeof(a))#define int long long#define runtime() ((double)clock() / CLOCKS_PER_SEC)#define fast ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0)using namespace std;#define TRACE#ifdef TRACE#define trace(...) __f(#__VA_ARGS__, __VA_ARGS__)template <typename Arg1>void __f(const char* name, Arg1&& arg1){cerr << name << " : " << arg1 << endl;}template <typename Arg1, typename... Args>void __f(const char* names, Arg1&& arg1, Args&&... args){const char* comma = strchr(names + 1, ',');cerr.write(names, comma - names) << " : " << arg1<<" | ";__f(comma+1, args...);}#else#define trace(...)#endiftypedef long long ll;typedef vector<int> vi;typedef vector<ll> vl;typedef long double ld;typedef pair<ll,ll> pl;typedef pair<int,int> pi;typedef pair<int,pi> ppi;typedef vector<vi> graph;template<class T> void mxi(T & a, const T & b) { a = max(a, b); }template<class T> void mni(T & a, const T & b) { a = min(a, b); }ld EPS=1e-9;mt19937 RNG(chrono::steady_clock::now().time_since_epoch().count());#define SHUF(v) shuffle(all(v), RNG);// Use mt19937_64 for 64 bit random numbers.bool allsame(string s){for(int i=1;i<sz(s);i++)if(s[i]!=s[0])return 0;return 1;}bool maxs(string s){for(int i=0;i<sz(s);i++)if(s[i]<s[0])return 1;else if(s[i]>s[0])return 0;}void solve(){string s; cin>>s;string ans="";if(allsame(s)){if(s[0]=='9'){for(int i=0;i<sz(s)+1;i++)ans+='1';// cout<<endl; return;}else{for(int i=0;i<sz(s);i++)ans+=(char)(s[0]+1);// cout<<endl;// return;}}else{if(maxs(s)){for(int i=0;i<sz(s);i++)ans+=s[0];// cout<<endl; return;}else{assert(s[0]!='9');for(int i=0;i<sz(s);i++)ans+=(char)(s[0]+1);// cout<<endl; return;}}cout<<ans<<endl;}signed main(){fast;int t,tab;cin>>t;tab=t;while(t--){//cout<<"Case #"<<(tab-t)<<": ";solve();}// cerr<<runtime();}//APPROACHING A QUESTION//+ Think of binary search (max of min etc also if n<=2*10^5)//+ Think of common dp states (Even if it appears as maths but constraints are small)//+ Check constraints//+ Keep calm and enjoy the question//+ Be sure to remove MOD from binpow (if needed)//+ Try bidirectional analysis for constructive questions//+ If given some sequence try thinking of prefix sums//+ If constraints are too large maybe its simple maths//+ In questions with binary operations think of bits independently and also the change pattern//+ If two or more binary operations are given mostly there is a relation between them and an arithmatic operator
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 2 3 4 ... |
correct output |
---|
2 3 4 5 6 ... |
user output |
---|
2 3 4 5 6 ... Truncated |
Test 2
Group: 2
Verdict: ACCEPTED
input |
---|
1000 735425311146082632 756615631808964686 466489470801941584 100417544394053220 ... |
correct output |
---|
777777777777777777 777777777777777777 555555555555555555 111111111111111111 555555555555555555 ... |
user output |
---|
777777777777777777 777777777777777777 555555555555555555 111111111111111111 55555555555555 ... Truncated |