ACM준비 96

GRIDISLANDS - 2

https://www.algospot.com/judge/problem/read/GRIDISLANDS algospot.com :: GRIDISLANDS Grid Islands 문제 정보 문제 알고스팟 시의 관광 명소는, 도시의 한가운데를 흐르는 강 위에 격자 모양으로 배치된 섬들과 이들을 잇는 다리입니다. 이 섬들은 세로 N, 가로 N+1의 격자 형태로 배치 www.algospot.com 처음 시도했던 백트래킹 방법. 결과는 시간 초과됨ㅜ #include int TOP = 1, LEFT = 1, DOWN, RIGHT; int TOTALBRIDGE, OUTPUT; int factorial(int n){ int fact = 1; for (int i = 1; i DOWN) { OUTPUT += factorial..

ACM준비/algospot 2015.07.30

GRIDISLANDS

https://www.algospot.com/judge/problem/read/GRIDISLANDS algospot.com :: GRIDISLANDS Grid Islands 문제 정보 문제 알고스팟 시의 관광 명소는, 도시의 한가운데를 흐르는 강 위에 격자 모양으로 배치된 섬들과 이들을 잇는 다리입니다. 이 섬들은 세로 N, 가로 N+1의 격자 형태로 배치 www.algospot.com INPUT : n OUTPUT : 2 ^ ( edge - 1 ) #include void pow(unsigned long long &OUTPUT, int n) { for (int i = 0; i < n; i++) { OUTPUT *= 2; OUTPUT %= 20090711; } } int main() { int CASE,..

ACM준비/algospot 2015.07.30

WORDLENGTH

https://www.algospot.com/judge/problem/read/WORDLENGTH algospot.com :: WORDLENGTH 단어 길이 재기 문제 정보 문제 (주의: 이 문제는 TopCoder SRM 202 Div 1 Easy 의 번역입니다) 단어들의 길이는 어떤 문장이 어렵게 쓰여진 문장인지, 쉬운 문장인지를 가르는 데 좋은 척도가 됩니다. 예 www.algospot.com 문자열을 이어서 조건을 3가지로 나눠 처리한다. #include #define LINE_MAX 81 #define STR_MAX 50*LINE_MAX+1 int main() { int C; for (scanf("%d", &C); C > 0; C--) { int i, j; int N, words_len = 0, ..

ACM준비/algospot 2015.07.09

어린왕자

https://www.acmicpc.net/problem/1004 1004번: 어린 왕자 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 첫째 줄에 출발점 (x1, y1)과 도착점 (x2, y2)이 주어진다. 두 번째 줄에는 행성계의 개수 n이 주 www.acmicpc.net 오래전에 풀은 문제라 기억은 안나지만 두 원간의 거리를 비교하여 해결한 것으로 보인다. #include #include void main() { int testcase; int x1, y1, x2, y2; int n; int cx, cy, r; int i; int num_answer, plag; scanf("%d", &testcase); while (testcase--) { num_..

ACM준비/acmicpc 2015.07.07

터렛

https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 3가지의 예외 케이스를 잘 구분하고 처리하면 된다. #include #include int main(void) { int test; int x1, y1, x2, y2, r1, r2; double d; int ret; scanf("%d", &test); while (test--) { scanf("%d %d %d %d %d %d", &x1, &y1, &r1, &x2, &y2, &r2); d = sqrt((double)((x2 - x1) * (x2 - x..

ACM준비/acmicpc 2015.07.07

SENTENCE

https://www.algospot.com/judge/problem/read/SENTENCE algospot.com :: SENTENCE 문장 찾기 문제 정보 문제 M개의 문장으로 이뤄진 책이 있다. 각 문장은 길이 1이상 60이하의 문자열이며, 알파벳 문자이거나(대문자 혹은 소문자), 마침표(.), 쉼표(,), 물음표(?) 혹은 빈칸으로 이 www.algospot.com str 관련 lib에 구현된 함수를 구현한다 생각하면 쉽다. index 만큼 복사하고 index+1만큼 복사하면 된다. #include #include #define SIZE 61 int CC(char* A, char* B) { int i; for (i = 0; B[i] != NULL; i++) if (A[i] != B[i] || A..

ACM준비/algospot 2015.07.07

PASS486

https://www.algospot.com/judge/problem/read/PASS486 algospot.com :: PASS486 비밀번호 486 문제 정보 문제 재훈이는 한 번 담배를 끊겠다고 다짐할 때마다 이메일 계정 비밀번호를 바꾸는 습관이 있습니다. 재훈이는 비밀번호를 항상 "no-smok**X**" 와 같이 정하는데, 여기서 X www.algospot.com 1. DP를 활용하여 소수값을 배열에 저장하는 방법으로 해결할 수 있음 2. 그렇지 않다면 TIME_OVER 에러 발생이 큼 #include #include using namespace std; #define MAX_N 10000001 int minFactor[MAX_N]; int minFactorPower[MAX_N]; int fac..

ACM준비/algospot 2015.07.07