Submission #463805

#TimeUsernameProblemLanguageResultExecution timeMemory
463805rainboySavrsen (COCI17_savrsen)C11
60 / 120
1488 ms78608 KiB
#include <stdio.h>

#define A	10000000

int abs_(int a) { return a > 0 ? a : -a; }

long long dp[A + 1];

void init() {
	int a, b;

	for (a = 1; a + a <= A; a++) {
		for (b = a + a; b <= A; b += a)
			dp[b] += a;
		dp[a] = dp[a - 1] + abs_(a - dp[a]);
	}
}

int main() {
	int a, b;

	init();
	scanf("%d%d", &a, &b);
	printf("%lld\n", dp[b] - dp[a - 1]);
	return 0;
}

Compilation message (stderr)

savrsen.c: In function 'main':
savrsen.c:23:2: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   23 |  scanf("%d%d", &a, &b);
      |  ^~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...