#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>
#define He_he_boy ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0)
#define ld long double
#define pb push_back
#define pf push_front
#define eb emplace_back
#define fi first
#define se second
#define ull unsigned long long
#define all(a) a.begin(), a.end()
#define rall(a) a.rbegin(), a.rend()
#define mx_e max_element
#define open freopen("fcolor.in", "r", stdin);
#define close freopen("fcolor.out", "w", stdout);
#define endl cout << '\n'
#define run(a) for (ll w23 = 1; w23 <= a; w23++)
typedef int ll;
using namespace std;
const ld eps = 0.00001, Pi = 3.14159275358979323846;
const ll mod = 1e9 + 7;
ll mod2 = 998244353, tt;
/// --------------------------------------------------------
ld dist(ld x, ld y, ld x2, ld y2){
	return sqrt((x - x2) * (x - x2) + (y - y2) * (y - y2));
}
ll s[1000010], c[1000010], a[1000010];
void Ali() {
	ll n, m;
	cin >> n >> m;
	for(ll i = 1;i <= n;i ++){
		cin >> s[i];
		c[s[i]] = i;
	} 
	for(ll i = 1;i <= m;i ++){
		cin >> a[i];
	}
	vector<ll>ans;
	for(ll j = 1;j + n - 1 <= m;j ++){
		ll p = a[s[1] + j - 1];
		ll ok = 0;
		for(ll i = 2;i <= n;i ++){
			ll f = a[s[i] + j - 1];
			if(f < p){
				ok = 1;
				break;
			}
			p = f;
		}
		if(!ok){
			ans.pb(j);
		}
	}
	cout << ans.size() << '\n';
	for(auto to : ans){
		cout << to << ' ';
	}
}
/// --------------------------------------------------------
int main() {
//  open
 // close;
  He_he_boy; 
  ll gg = 1; tt = 0;
  //cin >> gg;
  while (gg--) {
    Ali();
    // cout << '\n';
  }
  /*
   **PLUS ULTRA**
   */
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |