Submission #409108


Source Code Expand

(defpackage king-collection
  (:use COMMON-LISP)
  (:export king-collection4))

(in-package :king-collection)

(defun from-string-to-number ()
  (declare (optimize (speed 3) (safety 0) (debug 0)))
  (let ((ss (concatenate 'vector (read-line)))
	(oo '())
	(ee '()))
    (loop for i from 0 to (- (array-dimension ss 0) 1) collect
	 (if (not (eq #\  (aref ss i)))
	     (setf oo (cons (aref ss i) oo))
	     (progn
	       (setf ee (cons (concatenate 'string (reverse oo)) ee))
	       (setf oo nil))))
    (setf ee (cons (concatenate 'string (reverse oo)) ee))
    (setf oo nil)
    (setf ee (reverse ee))
    (mapcar (lambda (x) (parse-integer x :junk-allowed t)) ee)))

(defun king-collection4 ()
  (declare (optimize (speed 3) (debug 0) (safety 0)))
  (let* ((r-c-k (from-string-to-number))
	 (r (nth 0 r-c-k))
	 (c (nth 1 r-c-k))
	 (k (nth 2 r-c-k))
	 (n (read))
	 (r-r (make-array '(100001)))
	 (c-c (make-array '(100001)))
	 (r-r-r (make-array '(100001)))
	 (c-c-c (make-array '(100001)))
	 (result 0)
	 (vr (make-array 0
			 :fill-pointer 0
			 :adjustable t))
	 (vc (make-array 0
			 :fill-pointer 0
			 :adjustable t)))
    
    (loop for i from 0 to (- n 1) by 1 collect
	 (let ((a (read)) (b (read)))
	   (decf a)
	   (decf b)
	   (incf (svref r-r a))
	   (incf (svref c-c b))
	   (vector-push-extend a vr)
	   (vector-push-extend b vc)))
    
    (loop for i from 0 to (- c 1) by 1 collect
	 (incf (svref c-c-c (svref c-c i))))
    
    (loop for i from 0 to (- r 1 ) by 1 collect
	 (incf (svref r-r-r (svref r-r i))))
    
    (loop for i from 0 to k by 1 collect
	 (setf result (+ result (* (svref r-r-r i) (svref c-c-c (- k i))))))
    
    (loop for i from 0 to (- (length vr) 1) by 1 collect
	 (let* ((rr (svref r-r (aref vr i)))
		(cc (svref c-c (aref vc i)))
		(sum (+ rr cc)))
	   (if (= sum k)
	       (decf result)
	       (if (= sum (+ k 1))
		   (incf result)))))
    
    (format t "~a~%" result)))

(king-collection4)

Submission Info

Submission Time
Task C - 収集王
User haruto0kitune
Language Common Lisp (SBCL 1.0.55.0)
Score 100
Code Size 2013 Byte
Status AC
Exec Time 1516 ms
Memory 99924 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 3
AC × 18
AC × 33
Set Name Test Cases
Sample subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt
Subtask1 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt
Subtask2 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt
Case Name Status Exec Time Memory
subtask0-sample01.txt AC 1516 ms 55484 KB
subtask0-sample02.txt AC 559 ms 55300 KB
subtask0-sample03.txt AC 548 ms 55376 KB
subtask1-01.txt AC 559 ms 55268 KB
subtask1-02.txt AC 547 ms 55472 KB
subtask1-03.txt AC 536 ms 55516 KB
subtask1-04.txt AC 547 ms 55384 KB
subtask1-05.txt AC 552 ms 55528 KB
subtask1-06.txt AC 535 ms 55308 KB
subtask1-07.txt AC 538 ms 55380 KB
subtask1-08.txt AC 535 ms 55476 KB
subtask1-09.txt AC 533 ms 55368 KB
subtask1-10.txt AC 538 ms 55372 KB
subtask1-11.txt AC 543 ms 55492 KB
subtask1-12.txt AC 900 ms 55480 KB
subtask1-13.txt AC 903 ms 55404 KB
subtask1-14.txt AC 952 ms 55376 KB
subtask1-15.txt AC 922 ms 55384 KB
subtask2-01.txt AC 841 ms 57564 KB
subtask2-02.txt AC 920 ms 61916 KB
subtask2-03.txt AC 1067 ms 92180 KB
subtask2-04.txt AC 1393 ms 98704 KB
subtask2-05.txt AC 1342 ms 99132 KB
subtask2-06.txt AC 1426 ms 99796 KB
subtask2-07.txt AC 1282 ms 98256 KB
subtask2-08.txt AC 1437 ms 99900 KB
subtask2-09.txt AC 1423 ms 99788 KB
subtask2-10.txt AC 1434 ms 99724 KB
subtask2-11.txt AC 1474 ms 99796 KB
subtask2-12.txt AC 1446 ms 99724 KB
subtask2-13.txt AC 1447 ms 99800 KB
subtask2-14.txt AC 1482 ms 99900 KB
subtask2-15.txt AC 1449 ms 99924 KB