답안 #475734

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
475734 2021-09-23T22:31:00 Z CaroLinda Vepar (COCI21_vepar) C++14
30 / 70
1 ms 332 KB
#include <bits/stdc++.h>

#define mkt make_tuple
#define all(x) x.begin(),x.end()
#define sz(x) (int)(x.size())
#define ll long long
#define lp(i,a,b) for(int i = a ; i < b ; i++ )
#define pii pair<int,int>
#define mk make_pair
#define pb push_back

const int MAX= 1000 ;

using namespace std ;

int T ;
int l[2] , r[2] , q[2] ;
int d[MAX+10] , idx[MAX+10] ;
vector< vector<int> > lists ;
vector<int> primes ;

int main()
{
	for(int i = 2 ; i <= MAX ; i++ )
	{
		if(d[i] > 0 ) continue ;

		for(int j = i ; j <= MAX ; j += i )
			if(d[j] == 0 ) d[j] = i ;
	}

	for(int i = 2 ; i <= MAX ; i++ )
	{
		if(d[i] == i)
		{
			idx[i] = sz(primes) ;
			primes.push_back(i) ;
			lists.push_back( {i} ) ;
			continue ;
		}

		int x = i ;
		while(x>1)
		{
			int p = d[x] ;
			lists[idx[p]].pb( i ) ;
			x /= p ;
		}
	}

	scanf("%d", &T ) ;
	while(T--)
	{
		bool ok = true ;
		for(int i = 0 ; i < 2 ; i++ ) scanf("%d %d", &l[i], &r[i]) ;
		for(auto e : lists)
		{
			for(int i = 0 ; i < 2 ; i++ )
				q[i] = upper_bound(all(e), r[i])-lower_bound(all(e) , l[i]) ;

			if(q[0] > q[1]) 
			{
				ok = false ;
				break ;
			}
		}

		printf("%s\n" , ok ? "DA" : "NE") ;
	}
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:51:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   51 |  scanf("%d", &T ) ;
      |  ~~~~~^~~~~~~~~~~
Main.cpp:55:38: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   55 |   for(int i = 0 ; i < 2 ; i++ ) scanf("%d %d", &l[i], &r[i]) ;
      |                                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 320 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -