Submission #100295

#TimeUsernameProblemLanguageResultExecution timeMemory
100295mraronLun (COCI19_lun)C++14
50 / 50
3 ms384 KiB
#include<iostream> #include<vector> #include<map> #include<set> #include<cassert> #include<cassert> #include<unordered_map> #include<unordered_set> #include<functional> #include<queue> #include<stack> #include<cstring> #include<algorithm> #include<cmath> #include<sstream> #include<iomanip> #include<cstdio> #include<cstdlib> #include<numeric> using namespace std; #define all(x) (x).begin(), (x).end() #define pb push_back #define xx first #define yy second #define sz(x) (int)(x).size() #define gc getchar #define IO ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0) #define mp make_pair #ifndef ONLINE_JUDGE # define LOG(x) (cerr << #x << " = " << (x) << endl) #else # define LOG(x) ((void)0) #endif typedef long long ll; typedef unsigned long long ull; typedef long double ld; const double PI=3.1415926535897932384626433832795; const ll INF = 1LL<<62; const ll MINF = -1LL<<62; template<typename T> T getint() { T val=0; char c; bool neg=false; while((c=gc()) && !(c>='0' && c<='9')) { neg|=c=='-'; } do { val=(val*10)+c-'0'; } while((c=gc()) && (c>='0' && c<='9')); return val*(neg?-1:1); } bool valid(string& t) { ll dsum=0; for(int i=sz(t)-2;i>=0;i-=2) { ll dupla=(t[i]-'0')*2; if(dupla<=9) dsum+=dupla; else dsum+=dupla%10+dupla/10; } //cerr<<dsum<<"\n"; ll sum=dsum; for(int i=sz(t)-3;i>=0;i-=2) { sum+=t[i]-'0'; } //cerr<<t<<" "<<sum<<"\n"; return (sum*9)%10==(t.back()-'0'); } int main() { IO; int n; cin>>n; string t; cin>>t; auto it=find(all(t), 'x'); int ind=it-t.begin(); for(int i=0;i<=9;++i) { t[ind]=i+'0'; if(valid(t)) { cout<<i<<"\n"; return 0; } } assert(0); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...