#include <iostream>
#include <sstream>
#include <string>
#include <cmath>
using namespace std;
int main() {
int n, a, b;
cin>>n;
for (int i = 0; i < n; i++) {
cin>>a>>b;
int sum1=0;
int sum2=0;
for(int i=1;i<a;i++)
{
if(a%i==0)
{
sum1+=i;
}
}
for(int i=1;i<b;i++)
{
if(b%i==0)
{
sum2+=i;
}
}
if(sum1==b&&sum2==a)
{
cout<<"YES"<<endl;
}
else
{
cout<<"NO"<<endl;
}
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int main() {
int a[10000] = {0};
a[0] = a[1] = 1;
for (int i = 2; i < 10000; i++) {
if (a[i] == 0) {
for (int j = i + i; j < 10000; j = j + i) {
a[j] = 1;
}
}
}
int n, m;
int num = 0;
while (cin>>n) {
for (int k = 0; k < n; k++) {
cin>>m;
for (int i = 2; i < m / 2; i++) {
if ((a[i] == 0 && a[m - i] == 0) && i != m - i) {
num++;
}
}
cout << num << endl;
num = 0;
}
} return 0;
}
#include <bits/stdc++.h>
using namespace std;
int isprime (int n) {
int i;
if (n == 2) {
return 1;
}
for (i = 2; i < n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n,m;
while (cin>>n) {
for (int k = 0; k < n; k++) {
cin>>m;
for (int j = 2; j < m - 2; j++) {
if (isprime(j) == 1) {
if (isprime(m - j) == 1) {
cout<<j<<" "<<m - j<<endl;
break;
}
}
}
}
} return 0;
}
看来需要八个1
#include <bits/stdc++.h>
using namespace std;
int fu(int n, int i) {
int num = n;
while (num > 0) {
if (!(num % 10 == 0 || num % 10 == 1))
return 0;
num = num/10;
}return 1;
}
int main() {
int num;
while (cin>>num) {
for (int i = num; i <= 11111111; i++) {
if (fu(i , num) && i % num == 0) {
cout<<i<<endl;
break;
}
}
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int rn (int y) {
if (y % 400 == 0 || (y % 4 == 0 && y % 100 != 0))
return 1;
else
return 0;
}
int maxday[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int main() {
int y, m, d,num,i=1;
while (cin>>y>>m>>d>>num) {
while (i <= num) {
if(rn(y)) maxday[2] = 29;
else maxday[2] = 28;
if (d + 1 <= maxday[m])
d++;
else if (m + 1 <= 12) {
m++;
d = 1;
} else {
y++;
m = 1;
d = 1;
}
i++;
}
cout <<y<<" "<<m<<" "<<d<<endl;
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
int k=0;
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<2*n-1;j++)
{
if(i+j==n-1||j-i==n-1)
{
if(j-i==n-1){
printf("%c\n",'Z'-k);
k++;
break;
}
else
printf("%c",'Z'-k);
k++;
}
else
printf(" ");
}
}
for(i=i-2;i>=0;i--)
{
for(j=0;j<2*n-1;j++)
{
if(i+j==n-1||j-i==n-1)
{
if(j-i==n-1){
printf("%c\n",'Z'-k);
k++;
break;
}
else
printf("%c",'Z'-k);
k++;
}
else
printf(" ");
}
}
printf("\n");
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int isTriangle(int lenA, int lenB, int lenC) {
if (lenA + lenB > lenC && lenA + lenC > lenB &&
lenB + lenC > lenA)
return 1;
return 0;
}
int main() {
int i = 0, j = 0, k = 0;
int count = 0;
int n = 0;
while (cin>>n) {
count = 0;
for (i = 1; i <= n / 2; i++) {
for (j = i + 1; j < n; j++) {
for (k = j + 1; k < n; k++) {
if (isTriangle(i, j, k) && i + j + k == n)
count++;
}
}
}
cout<<count<<endl;
}
return 0;
}
也可以看C++素数专题训练
#include <bits/stdc++.h>
using namespace std;
int isprime (int n) {
if (n == 0 || n == 1) return 0;
for (int p = 2; p < (int)sqrt(n) + 1; p++) {
if (n % p == 0) return 0;
}
return 1;
}
int main () {
int x, y;
while (cin>>x>>y) {
int count = 0;
for (int i = x; i <= y; i++) {
if (isprime(i)) count++;
}
cout << count<<endl;
}
}
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
while( scanf("%d",&t) != EOF )
{
for(int i=0;i<t;i++)
{
int n;
int a[20][20];
scanf("%d",&n);
for(int j=0;j<n;j++)
{
for(int k=0;k<=j;k++)
{
if(k==0 || k==j)
a[j][k]=1;
else
a[j][k]=a[j-1][k-1]+a[j-1][k];
}
}
for(int p=0;p<n;p++)
{
for(int r=0;r<=p;r++)
{
if(r==0)
printf("%d",a[p][r]);
else
printf(" %d",a[p][r]);
}
printf("\n");
}
printf("\n");
}
}
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,arr[17][17];
int i,j,k;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<2*n+1;i++)
{
for(j=0;j<2*n+1;j++)
{
if(i==j||i==2*n-j)
arr[i][j]=1;
if(i<n)
{
if(j>i&&j<2*n-i)
arr[i][j]=2;
}
if(i>n)
{
if(j>2*n-i&&j<i)
arr[i][j]=3;
}
if(j<n)
{
if(i>j&&i<2*n-j)
arr[i][j]=4;
}
if(j>n)
{
if(i<j&&i>2*n-j)
arr[i][j]=5;
}
}
}
for(i=0;i<2*n+1;i++)
{
for(j=0;j<2*n+1;j++)
{
printf("%d",arr[i][j]);
if(j==2*n)
break;
printf(" ");
}
printf("\n");
}
}
}