2020省模拟赛
难度:简单
个人解法:c
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// 请在此输入您的代码
int a,b,c,n,m=0;
int i;
scanf("%d%d%d%d",&n,&a,&b,&c);
for(i = 1;i <= n;i++){
if(i%a != 0&&i%b != 0&&i%c != 0){
m++;
}
}
printf("%d",m);
return 0;
}
c++:
#include <iostream>
using namespace std;
int main()
{
// 请在此输入您的代码
int m,cnt=0;
cin>>m;
int a,b,c;
cin>>a>>b>>c;
for(int i=1;i<=m;i++)
{
if(i%a!=0 && i%b!=0 && i%c!=0)
cnt++;
}
cout<<cnt;
return 0;
}
java:
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
public static void main(String[] args) {
Scanner cann = new Scanner(System.in);
int n = cann.nextInt();
int a = cann.nextInt();
int b = cann.nextInt();
int c = cann.nextInt();
int count=0;
for(int i = 1;i<=n;i++){
if(i%a!=0&&i%b!=0&&i%c!=0)
count++;
}
System.out.println(count);
}
}
解题思路
除了基本三变量abc,还需设置一个变量来进行循环,一个变量记录个数
较简单,不是整数倍即 i % a != 0 &&i % b != 0&&i % c != 0
输入scanf("%d",&a);
在循环里一个if判断即可