Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- #define password1 "11011011100001111001111010001100001"
- #define password2 "11100001100001110111011001001100001"
- #define title "1010010110010111011011100101110110111000101100101111001001000010100001010000010110011101111111010101000001101101110000111110010100000110110011010011110110110010101000001110100111011111010011100011110010101011000100000110001011101011110100010000010010010100000110111111011101101100111100101000001101100110100111101101100101010000011011111101110110001111001010100001"
- #define question "0101101010000010101111101000110100111000111101000010000011011111101110110010101000001101001111001101000001111001110111111101011110010010000011011011101111111001111101000100000110011011000011110110110111111101011110010110100111101001100101010000011011101100001110110111001010100000110011111010011110110110010111011100100000110001011110010100000110110111001010111111"
- #define message1 "10100001101100110010111000011110011110010101000001100011110100011001011100011110101101000001111001110111111101011110010010000010010001100001110111011001111101111111010111101001110011010000001110100101001"
- #define message2 "10100111101111111001011100101111001010000011101001101111010000011100111100001111100101011000100000111100111011111110101010000011001001101001110010011011100100111111010001000001100111110010111101000100000110100111101000100001010000001110100101000"
- string encoder(string s);
- string decoder(string s);
- string encoder(string s)
- {
- vector<int>ev;
- string esb;
- ev.clear();
- for(int i=0;i<s.size();i++){ ev.push_back(s[i]); }
- esb.clear();
- for(int i=0;i<ev.size();i++){
- string temp; int ct=7;
- while(ev[i]>0){ ct--; temp+=ev[i]%2+'0'; ev[i]/=2; }
- while(ct!=0){ temp+='0'; ct--; }
- reverse(temp.begin(),temp.end());
- esb+=temp;
- }
- return esb;
- }
- string decoder(string s)
- {
- string temp; string ds; int x;
- for(int i=0;i<s.size();i++){
- if(i%7==0 && i>0){
- x=0; reverse(temp.begin(),temp.end());
- for(int i=0;i<temp.size();i++){ x+=((temp[i]-'0')*pow(2,i)); }
- ds+=((char)x); temp.clear();
- }
- temp+=s[i];
- if(i==s.size()-1){
- x=0; reverse(temp.begin(),temp.end());
- for(int i=0;i<temp.size();i++){ x+=((temp[i]-'0')*pow(2,i)); }
- ds+=((char)x);
- }
- }
- return ds;
- }
- int main()
- {
- freopen("in.txt", "r", stdin);
- freopen("out.txt", "w", stdout);
- // string s;
- // getline(cin,s);
- // cout<<encoder(s)<<endl;
- cout<<decoder(title)<<endl<<endl;
- cout<<decoder(question)<<endl<<"- ";
- string s; cin>>s;
- if(encoder(s)==password1 || encoder(s)==password2){
- cout<<"Hi, "<<decoder(password1)<<". Here is your message"<<endl<<endl;
- cout<<decoder(message1)<<endl;
- }
- else{
- cout<<decoder(message2)<<endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement