PROBLEM LINK:CodeChef: Practical coding for everyone
Author: Abhishek Yadav
Tester: Abhishek Yadav
Editorialist: Abhishek Yadav
DIFFICULTY:
SIMPLE
PREREQUISITES:
Math.
PROBLEM:
You have to calculate what day it will be on Nth day if today is sunday
QUICK EXPLANATION:
As we are talking about the day. then it is clear that a week has 7 days in it
so what we have to do is divide the Nth day with 7 and collect the quotient of the (Nth/7) no we have to subtract the quotient with Nth day.
we will get out answer one of the following i.e (0,1,2,3,4,5,6). Now we can calculate the day easily by adding this number with the “0” let 0+1=2 the our day is monday and we have to print it. that’s it.
EXPLANATION:
As we are talking about the day. then it is clear that a week has 7 days in it
so what we have to do is divide the Nth day with 7 and collect the quotient of the (Nth/7) no we have to subtract the quotient with Nth day.
we will get out answer one of the following i.e (0,1,2,3,4,5,6). Now we can calculate the day easily by adding this number with the “0” let 0+1=2 the our day is monday and we have to print it. that’s it.
Example
If N=100. we know that today is sunday. we have to calculate what day it will be on 100th day from now.
After calculation mentioned above we will get the answer as “2”. now we will find the 2nd day from sunday i.e tuesday
The answer is Tuesday. It will be tuesday on 100th day from now.(i.e from sunday).
Note: You can print the answers like (monday,Monday,MONDAY) anyway you want all answers are case insensitive.
SOLUTIONS:
Setter's Solution
#include <bits/stdc++.h>
const long long SZ = 4e3 + 7;
const long long inf = 1e18;
const long long MOD = 1e9 + 7;
const long long mod = 1e9 + 7;
long long opnmbr = 1;
#define ll long long
#define ld long double
#define pb push_back
#define mp make_pair
#define eb emplace_back
#define pll pair<ll, ll>
#define vi vector
#define vs vector
#define vpl vector
#define qi queue
#define si set
#define map map<ll, ll>
#define umap unordered_map<ll, ll>
#define fi first
#define se second
#define sz(x) (ll)x.size()
#define all(c) (c).begin(), (c).end()
#define allr(c) (c).rbegin(), (c).rend()
#define Max(a,b) ((a > b) ? a : b)
#define Min(a,b) ((a < b) ? a : b)
#define ci(X) ll X; cin>>X
#define cii(X, Y) ll X, Y; cin>>X>>Y
#define ciii(X, Y, Z) ll X, Y, Z; cin>>X>>Y>>Z
#define ciiii(W, X, Y, Z) ll W, X, Y, Z; cin>>W>>X>>Y>>Z
#define co cout<<
#define in cin>>
#define Jivan_ka_asli_aadhar_to_prem_hai_na ll ___T; cin>>___T; while (___T-- > 0)
#define Code_Wode_mai_kya_rakha_hai ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define inf 1e18
#define ed endl
#define abhi(i, n) for(ll i = 0; i < (n); i++)
#define abhi1(i, n) for(ll i = 1; i <= (n); i++)
#define abhi2(i, l, r) for(ll i = l; i < (r); i++)
#define rabhi(i, l, r) for(ll i = l; i >= (r); i–)
#define ms0(X) memset((X), 0, sizeof((X)))
#define ms1(X, V) memset((X), 1, sizeof((X)))
#define ms2(X, V) memset((X), 1, sizeof((X)))
#define flv(X, V) fill(all((X)), V)
#define gcd(a,b) __gcd(a,b)
using namespace std;
ll prmod(ll a, ll b)
{
ll ans = 1;
while (b)
{
if (b & 1) ans = (ans * a) % MOD;
b = b / 2;
a = (a * a) % MOD;
}
return ans;
}
int pri(ll n)
{
int flag=0;
for(ll i = 2; i <= n / 2; ++i)
{
if(n % i == 0)
{
flag = 1;
break;
}
}
if(flag==0)
{
return 1;
}
else
{
return 0;
}
}
ll lcm(ll a, ll b)
{
return (a / gcd(a, b)) * b;
}
void Radhe_Radhe()
{
ll n,rem,ans;
string s;
cin>>n;
rem=n/7;
rem=rem*7;
ans=n-rem;
if(ans==0)
{
cout<<“sunday”<<“\n”;
}
else if(ans==1)
{
cout<<“monday”<<“\n”;
}
else if(ans==2)
{
cout<<“tuesday”<<“\n”;
}
else if(ans==3)
{
cout<<“wednesday”<<“\n”;
}
else if(ans==4)
{
cout<<“thursday”<<“\n”;
}
else if(ans==5)
{
cout<<“friday”<<“\n”;
}
else if(ans==6)
{
cout<<“saturday”<<“\n”;
}
}
int main()
{
Code_Wode_mai_kya_rakha_hai;
Jivan_ka_asli_aadhar_to_prem_hai_na
{
Radhe_Radhe();
}
}
Tester's Solution
#include <bits/stdc++.h>
const long long SZ = 4e3 + 7;
const long long inf = 1e18;
const long long MOD = 1e9 + 7;
const long long mod = 1e9 + 7;
long long opnmbr = 1;
#define ll long long
#define ld long double
#define pb push_back
#define mp make_pair
#define eb emplace_back
#define pll pair<ll, ll>
#define vi vector
#define vs vector
#define vpl vector
#define qi queue
#define si set
#define map map<ll, ll>
#define umap unordered_map<ll, ll>
#define fi first
#define se second
#define sz(x) (ll)x.size()
#define all(c) (c).begin(), (c).end()
#define allr(c) (c).rbegin(), (c).rend()
#define Max(a,b) ((a > b) ? a : b)
#define Min(a,b) ((a < b) ? a : b)
#define ci(X) ll X; cin>>X
#define cii(X, Y) ll X, Y; cin>>X>>Y
#define ciii(X, Y, Z) ll X, Y, Z; cin>>X>>Y>>Z
#define ciiii(W, X, Y, Z) ll W, X, Y, Z; cin>>W>>X>>Y>>Z
#define co cout<<
#define in cin>>
#define Jivan_ka_asli_aadhar_to_prem_hai_na ll ___T; cin>>___T; while (___T-- > 0)
#define Code_Wode_mai_kya_rakha_hai ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define inf 1e18
#define ed endl
#define abhi(i, n) for(ll i = 0; i < (n); i++)
#define abhi1(i, n) for(ll i = 1; i <= (n); i++)
#define abhi2(i, l, r) for(ll i = l; i < (r); i++)
#define rabhi(i, l, r) for(ll i = l; i >= (r); i–)
#define ms0(X) memset((X), 0, sizeof((X)))
#define ms1(X, V) memset((X), 1, sizeof((X)))
#define ms2(X, V) memset((X), 1, sizeof((X)))
#define flv(X, V) fill(all((X)), V)
#define gcd(a,b) __gcd(a,b)
using namespace std;
ll prmod(ll a, ll b)
{
ll ans = 1;
while (b)
{
if (b & 1) ans = (ans * a) % MOD;
b = b / 2;
a = (a * a) % MOD;
}
return ans;
}
int pri(ll n)
{
int flag=0;
for(ll i = 2; i <= n / 2; ++i)
{
if(n % i == 0)
{
flag = 1;
break;
}
}
if(flag==0)
{
return 1;
}
else
{
return 0;
}
}
ll lcm(ll a, ll b)
{
return (a / gcd(a, b)) * b;
}
void Radhe_Radhe()
{
ll n,rem,ans;
string s;
cin>>n;
rem=n/7;
rem=rem*7;
ans=n-rem;
if(ans==0)
{
cout<<“sunday”<<“\n”;
}
else if(ans==1)
{
cout<<“monday”<<“\n”;
}
else if(ans==2)
{
cout<<“tuesday”<<“\n”;
}
else if(ans==3)
{
cout<<“wednesday”<<“\n”;
}
else if(ans==4)
{
cout<<“thursday”<<“\n”;
}
else if(ans==5)
{
cout<<“friday”<<“\n”;
}
else if(ans==6)
{
cout<<“saturday”<<“\n”;
}
}
int main()
{
Code_Wode_mai_kya_rakha_hai;
Jivan_ka_asli_aadhar_to_prem_hai_na
{
Radhe_Radhe();
}
}
Editorialist's Solution
#include <bits/stdc++.h>
const long long SZ = 4e3 + 7;
const long long inf = 1e18;
const long long MOD = 1e9 + 7;
const long long mod = 1e9 + 7;
long long opnmbr = 1;
#define ll long long
#define ld long double
#define pb push_back
#define mp make_pair
#define eb emplace_back
#define pll pair<ll, ll>
#define vi vector
#define vs vector
#define vpl vector
#define qi queue
#define si set
#define map map<ll, ll>
#define umap unordered_map<ll, ll>
#define fi first
#define se second
#define sz(x) (ll)x.size()
#define all(c) (c).begin(), (c).end()
#define allr(c) (c).rbegin(), (c).rend()
#define Max(a,b) ((a > b) ? a : b)
#define Min(a,b) ((a < b) ? a : b)
#define ci(X) ll X; cin>>X
#define cii(X, Y) ll X, Y; cin>>X>>Y
#define ciii(X, Y, Z) ll X, Y, Z; cin>>X>>Y>>Z
#define ciiii(W, X, Y, Z) ll W, X, Y, Z; cin>>W>>X>>Y>>Z
#define co cout<<
#define in cin>>
#define Jivan_ka_asli_aadhar_to_prem_hai_na ll ___T; cin>>___T; while (___T-- > 0)
#define Code_Wode_mai_kya_rakha_hai ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
#define inf 1e18
#define ed endl
#define abhi(i, n) for(ll i = 0; i < (n); i++)
#define abhi1(i, n) for(ll i = 1; i <= (n); i++)
#define abhi2(i, l, r) for(ll i = l; i < (r); i++)
#define rabhi(i, l, r) for(ll i = l; i >= (r); i–)
#define ms0(X) memset((X), 0, sizeof((X)))
#define ms1(X, V) memset((X), 1, sizeof((X)))
#define ms2(X, V) memset((X), 1, sizeof((X)))
#define flv(X, V) fill(all((X)), V)
#define gcd(a,b) __gcd(a,b)
using namespace std;
ll prmod(ll a, ll b)
{
ll ans = 1;
while (b)
{
if (b & 1) ans = (ans * a) % MOD;
b = b / 2;
a = (a * a) % MOD;
}
return ans;
}
int pri(ll n)
{
int flag=0;
for(ll i = 2; i <= n / 2; ++i)
{
if(n % i == 0)
{
flag = 1;
break;
}
}
if(flag==0)
{
return 1;
}
else
{
return 0;
}
}
ll lcm(ll a, ll b)
{
return (a / gcd(a, b)) * b;
}
void Radhe_Radhe()
{
ll n,rem,ans;
string s;
cin>>n;
rem=n/7;
rem=rem*7;
ans=n-rem;
if(ans==0)
{
cout<<“sunday”<<“\n”;
}
else if(ans==1)
{
cout<<“monday”<<“\n”;
}
else if(ans==2)
{
cout<<“tuesday”<<“\n”;
}
else if(ans==3)
{
cout<<“wednesday”<<“\n”;
}
else if(ans==4)
{
cout<<“thursday”<<“\n”;
}
else if(ans==5)
{
cout<<“friday”<<“\n”;
}
else if(ans==6)
{
cout<<“saturday”<<“\n”;
}
}
int main()
{
Code_Wode_mai_kya_rakha_hai;
Jivan_ka_asli_aadhar_to_prem_hai_na
{
Radhe_Radhe();
}
}