倒计时42天
字符串旋转与追加 (nowcoder.com)
//头来就想的很麻烦,分类讨论if+else,虽然可以做出来,但万一紧张可能就特别容易露情况,这个方法就好/*string用法://在str后面加上东西用.append("")
void solve() {string str = "hello";str.append("hhhhhaaaaaaaaa");cout << str;
}str.push_back():在后面加一个字符
str.pop_back():在后面删一个字符
str.empty():看是否为空void solve() {string str = "hello";cout << str.back() << endl << str.front();
}//从a中获取b
void solve() {string str = "hello";string hh = str.substr(1, 3);//第几个开始,获取几个/hh大小cout << hh;
}//找不到返回npos,找到返回ssss中第一个字符在str的下标
void solve() {string str = "hello", ssss = "he", sssss = "hea";if (str.find(ssss) == string::npos)cout << 11111;elsecout << "aaaaa";cout << endl;if (str.find(sssss) == string::npos)cout << 11111;elsecout << "aaaaa";cout << endl;cout << str.find('e', 0);
}void solve() {string str = "hello";str.erase(0, 1);//第几个开始,删几个cout << str;
}void solve() {string str = "hello", sss = "world";str.swap(sss);cout << str << endl << sss;
}
*/#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+6;
const int inf=0x3f3f3f3f;
void solve()
{string s1,s2;cin>>s1>>s2;while(s1.size()<s2.size()){if(s2.back()=='A')s2.pop_back();else{s2.pop_back();reverse(s2.begin(),s2.end());}}if(s1==s2)cout<<"Possible";else cout<<"Impossible";
}
signed main()
{ios_base::sync_with_stdio(false);cin.tie(nullptr),cout.tie(nullptr);int t=1;//cin>>t;while(t--){solve();}return 0;
}
平衡字符串 (nowcoder.com)
//前缀:i前的
//初始化要注意,以后尽量都初始化,,#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 2e5 + 6;
const int inf = 0x3f3f3f3f;
string s;
int k;
int find()
{int x=0,xx=0,xxxx=0;//别忘记让等于0!!!for(int i=0;i<s.size();i++){if(s[i]=='+')x++;else xx++;if(x<xx)xxxx++;}return xxxx;
}
void solve() {cin>>s;int cnt=0;cin>>k;while(find()>k){for(int i=0;i<s.size();i++){if(s[i]=='-'){s[i]='+';break;}}cnt++;}cout<<cnt;
}
signed main() {ios_base::sync_with_stdio(false);cin.tie(nullptr), cout.tie(nullptr);int t = 1;//cin>>t;while (t--) {solve();}return 0;
}
四元组计数 (nowcoder.com)
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 2e5 + 6;
const int inf = 0x3f3f3f3f;
int a[550];
map<int,int>mp;
void solve() {int n,cnt=0;cin>>n;for(int i=0;i<n;i++)cin>>a[i];for(int i=0;i<n;i++){for(int j=0;j<i;j++){mp[a[i]*a[j]]++;}for(int k=i+2;k<n;k++){if(a[k]%a[i+1]==0){cnt+=mp[a[k]/a[i+1]];}}}cout<<cnt;
}
signed main() {ios_base::sync_with_stdio(false);cin.tie(nullptr), cout.tie(nullptr);int t = 1;//cin>>t;while (t--) {solve();}return 0;
}