#include<iostream>
using namespace std;constint N =100005;
bool a[N];intmain(){int n, m;
cin >> n >> m;for(int i =1; i <= n; i++){
a[i]=1;}int t;for(int i =1; i <= m; i++){
cin >> t;for(int i =1; i <= n; i++){if(i % t ==0){
a[i]=0;}}}int cnt =0;for(int i =1; i <= n; i++){
cnt += a[i];}
cout << cnt;return0;}
T2
解法一:枚举,60分
#include<bits/stdc++.h>
using namespace std;
string change(string s){int len = s.size();int pos;for(int i = len -1; i >=0; i--){if(s[i]=='1'){
pos = i;break;}}for(int i =0; i <= pos; i++){if('1'== s[i]){
s[i]='0';}else{
s[i]='1';}}return s;}intmain(){//freopen("T2.in", "r", stdin);int n;
string s;
cin >> n >> s;
string target;for(int i =0; i < n; i++){
target.push_back('0');}int cnt =0;while(s != target){
s =change(s);
cnt++;}
cout << cnt;return0;}
解法二
#include<iostream>#include<vector>#include<algorithm>
using namespace std;typedeflonglong LL;constint maxn =2e5+10;int a[maxn];intmain(){int n;
string s;
cin >> n >> s;int cnt =0;char lastC = s[0];for(int i =1; i < s.length(); i++){if(lastC != s[i]){
lastC = s[i];
cnt++;}}if(lastC =='1'){
cnt++;}
cout << cnt;return0;}
T3
解法一:枚举,30分
#include <bits/stdc++.h>
using namespace std;
int main()
{
//freopen("T3.in", "r", stdin);
string s, t;
cin >> s >> t;
sort(s.begin(), s.end());
int cnt = 0;
do
{
if(string::npos != t.find(s))
{
cnt++;
}
}while(next_permutation(s.begin(), s.end()));
cout << cnt;
return 0;
}
T1#include <iostream>using namespace std;const int N = 100005;bool a[N];int main(){ int n, m; cin >> n >> m; for(int i = 1; i <= n; i++) { a[i] = 1; } int t; for(int i = 1; i <= m; i++)