A模拟题(AC)
矩阵a变换后成矩阵b,a和b每个位置的元素不同
做法:a[i][j]%(m*n)+1
注:先取模,后加1
#include <iostream>
#include <cstring>
#include <vector>
#include <algorithm>
using namespace std;
const int N = 5e4+10;
int a[100][100];
void solve()
{
int n,m;cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
if(n==1&&m==1)
{
cout<<-1<<endl;
return ;
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
cout<<a[i][j]%(m*n)+1<<" ";
cout<<endl;
}
return ;
}
int main()
{
int t;cin>>t;
while(t--)
{
solve();
}
return 0;
}
B异或问题、贪心、构造【补题】
0101 (decimal 5)
AND 0011 (decimal 3)
= 0001 (decimal 1)
0101 (decimal 5)
OR 0011 (decimal 3)
= 0111 (decimal 7)
0101 (decimal 5)
XOR 0011 (decimal 3)
= 0110 (decimal 6)
同0异1
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
void solve()
{
int n;cin>>n;
string s,t;cin>>s>>t;
for(int i=0;i<n;i++)
{
if(s[i]=='1')
{
cout<<"YES"<<endl;
return;
}
if(t[i]=='1')
{
cout<<"NO"<<endl;
return;
}
}
cout<<"YES"<<endl;
return ;
}
int main()
{
int t;cin>>t;
while(t--)
{
solve();
}
return 0;
}